• Developer Guide
  • Program APIs
  • Overview
  • Account
    • Account Operations
      • Create
      • Update
      • Delete
    • CIP
      • Force CIP
      • Run
    • Enrollment
      • Start
      • Update
      • Complete
      • Verify
      • Run
    • Account Management
      • Account Overview
      • Verify Account
      • Modify Status
      • Account Cards
      • Carrier List
      • Balance
      • Overdraft Balance
      • Saving Interest
    • Search
      • By CutomerId
      • By Name, ZipCode etc.
    • Account Fees
      • Fee History
      • Pending Fees
    • User Defined Fields
      • Get
      • Set
    • Customer Note
      • Add
      • History
    • Account Feature
      • Setaccountfeature
      • Getaccountfeatures
    • Alerts
      • Get
      • Set
      • Get Blackout
      • Set Blackout
      • Verify OnDemand Alert
      • Modify OnDemand Alert
  • Card
    • Card Operations
      • Add Card
      • Delete Card
      • Activate Card
      • Card Details
      • Verify Instant Card
      • Creating Card Image
      • Creating Card Template
      • Creating Virtual Card
    • Card Pin
      • Request New Card Pin
      • Reset Card-Pin Fail Count
      • Generate Card-Pin Change Token
      • Complete Card-Pin Change Request
    • Generate Access Token
    • Provisioning Request
    • Retrieve Credit Summary
    • Credit Limit
      • Setting Credit Limit
      • Credit Limit Change History
    • Bulk Order
      • Creating Bulk Card Order
      • Fetch Bulk Card Order
    • Move Card Inventory
    • Move Card
  • Transactions
    • Fee
      • Assess Fee
      • Reverse Assess Fee
    • Adjustment
      • Retrieve
      • Reverse Adjustment
    • Payment
      • Retrieve
      • Reverse Payment
      • Update Payment
    • Account Transfer
      • Doing Account Transfer
      • Reversing Account Transfer
    • Expire Authorization
    • Deposits
      • Pending Deposits
      • Deposit History
      • Modify Pending Deposit History
    • Hold
      • Create Hold
      • Expire Hold
      • Hold History
    • Pending Merchant Credits
      • Retrieve
      • Update
    • History
      • Transaction History
      • Payment History
      • All Trans History
    • Verify Sufficient Funds
  • Messaging
    • Add Secure Message
    • Retrieve Secure Message
  • Locations
    • Create
    • Modify
    • Search
  • Product
    • Product Info
    • Create Product From Template
    • Reporting Info
  • IVR
    • Create IVR Call
    • IVR Call Status
  • Bill Payment
    • Biller
      • Retrieve Billers
      • Search Biller
      • Add Rpps Biller
      • Add Paper Biller
      • Remove Biller
    • Bill Payment
      • Create Bill Payment
      • Cancel Bill Payment
      • Retrieve Bill Pay History
  • ACH Accounts
    • Retrieve
    • Add
    • Modify
    • Remove
    • Transactions
      • Create
      • Cancel
      • History
  • Purchasing Account Management
    • Modify Purchasing Card
    • Modify How To Identify Merchants
    • Sweep Off
      • Retrieve
      • Set
    • TopUp
      • Retrieve
      • Set
  • Federal Benefit Enrollment
    • Create
    • Update
    • Retrieve
    • ReSubmit
  • Miscellaneous
    • Ping
    • Search Customer
    • Simulated Card
      • Create Auth
      • Create Settle
Galileo Program Master API
Our Partners use the Program Master API to create sophisticated financial products. The API interacts with cardholder information.
Methods are available in these categories include:
  • Account enrollment
  • Account management
  • Card
  • Transactions
  • Account activity
  • Load locations
  • IVR
  • Secure messaging
  • Bill Payment
  • Bank transfer
  • Card inventory management
  • Location management
  • Program and product management
  • Purchasing account management
  • Federal benefit enrollment
  • Credit
  • Miscellaneous
Connecting with the API. Galileo supplies:
  • Secure web address
  • Provider ID
  • Provider usernames and passwords
  • Product IDs
Parameter updates
A method’s parameters are defined in the documentation. As needed, additional optional parameters may be added to methods. These additional parameters will be added in a way that the expected method behavior is not changed. Notice of additional parameters will be included in the API release notes and updated documentation.
Parameters
Be aware that parameter names are case-sensitive. The API disregards miss- spellings or undefined parameters.
Content type
The raw HTTP request examples in this document include the necessary content type definition of 'application/x-www-form-urlencoded';. URL encoding in this content type definition relates to parameters passed in the GET or URL string. Parameters passed as POST data should not be URL encoded.
Adding of XML nodes
From time to time the need arises (usually related to a Partner request) that we return additional information in a method response. Additional XML nodes may be added without notice to the XML output of any given method.
An example would be: a customer profile method was originally designed to only return the customer's primary phone -- the mobile phone is also needed. Galileo in that circumstance would add the mobile phone as an additional XML node in the customer profile method.
Method response format
The Program Master API supports two formats for method responses, XML and JSON. XML is the default response. JSON response format can be returned by passing a custom request header parameter and value 'response-content-type: json'.
createAccount()
Creates a new account for instant issue, personalized, and secondary cards. It also allows the loading of funds to the card at the time of creation.
createAccount() is a Payment Card Industry (PCI) compliance sensitive method. When the provider_params are enabled, it returns a PAN/cvv/expdate.
Duplicate use of Customer ID
The createAccount method can be configured to allow or disallow the duplicate use of customer ID. This configuration is set at the product level. If duplicate use of customer ID is disallowed, during the createAccount call the enrollment data is checked to confirm that there are no accounts in application submitted (V), canceled without refund (Z), or active (N) status. If no account is found in these statuses, the enrollment is allowed.
Parameters
When provider_params are enabled returns PAN/cvv/expdate
Parameter Required Data type Pattern Notes
apiLogin Yes String 50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String 15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String 60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
prodId Yes Integer Integer

501

Product ID
id No String

See section on ID Types.

123456789

Unique identifier for Cardholder, usually SSN (see Appendix Enumerations section on Customer ID Types).
idType Conditional Integer See section on ID Types.

2

Identifies the type of parameter ID (see Appendix Enumerations section on Customer ID Types).
id2 No String See Customer ID Type section.

123456789012|UT|12/25/2020

Unique identifier for a Cardholder, used for a secondary ID.
idType2 Conditional Integer See section on ID Types.

1

Identifies the type of ID used in the id2 response field. (See Customer ID Types in documentation).
location No String Must be a number if type is 0. Must be less than 15 if type is 1.

a455-3483

Unique location identifier. See location types.
locationType No Integer 0, 1, or 2

1

  • 0=Galileo Location ID

  • 1=Partner Location ID

  • 2=Don't Validate
locale No String Accepted values = "en_US", "es_US", "fr_CA", and "en_CA"

en_US

Sets customer language preference. Default is "en_US".
firstName No String

1-30 characters; letters, spaces, numbers, and some punctuation:
, . ? @ & ! # ' ~ * - ; +.

A minimum of two characters are required for this field.

Ed
Cardholder's first name
middleName No String Letters and spaces, maximum length of 30 characters.

W

Cardholder's middle name
lastName No String 30 characters; letters, spaces, numbers, and some punctuation:
, . ? @ & ! # ' ~ * - ; +.

Harley

Cardholder's last name
dateOfBirth No Date YYYY-MM-DD, minimum age per the business rules for the program.

1980-01-01

Cardholder's birth date
address1 No String Maximum length -- 40 characters. Cannot be a P.O. Box.

33 Maple Street

Cardholder's address line 1
address2 No String Maximum length of 30 characters.

#4B

Cardholder's address line 2
shipToAddressPermanent No Integer 1 or 0

1

1=make a ship to address Permanent.
city No String Letters and spaces, maximum length 20 characters.

Salt Lake City

Cardholder's city
state No String Valid 2 character state abbreviation.

UT

Cardholder's state
postalCode No String 12345 or 12345-1234 (US), K1A-1A1 (CA)

18412

Cardholder's postal code (zip code)
countryCode No Number Three digit country code.

840

Three digit ISO numeric UN M49 country code; Example USA=840, Canada=124.
expressMail No Boolean

Y, N, 1, 2, 3 or 4

These values should only be used by programs whose emboss vendor supports all of the values. Y maps to '2' and N mapes to '1' in the ship_type field for emboss.

0

 

Use express mail to send the new card plastic.
primaryPhone No Number Valid phone number

8013656050

Cardholder's primary phone number
otherPhone No Number Valid phone number

8013656050

Cardholder's other phone number
mobilePhone No Number Valid phone number

8013656050

Cardholder's mobile phone number
mobileCarrierId Conditional Integer Configurable list

8

Cardholder's mobile carrier -- configurable list.
email No String Email Address

user@fakedomain.com

Cardholder's email
webUid No String Must be unique. Start with a letter. Only letters and numbers. Case insensitive.

4j9KH3kkdh

Cardholder website username
webPwd No String At least 8 characters and have an uppercase character, lower case character and a number.

eharley

Cardholder website password
secretQuestion No String Letters, spaces and '?', maximum length of 50 characters.

What was the name of your first pet?

Secret Question
secretAnswer No String Letters and spaces, maximum length of 50 characters.

Larry

Secret Answer
accountNo No String PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
loadAmount No Number Monetary amount greater than 0.

100

Currency amounts passed as whole or fractional amounts, examples: '100.00', '100', or '100.73'. Initial load amount on card must be within product load limits or designated amount for Instant Issue card.
loadType No String 2 characters

RL

Payment types are configurable per client. Contact your account representative to determine which types you have implemented. If no loadType value is specified, the default loadType value RL will be used.
externalAccountId No String Letters and numbers, maximum length 30 characters.

553b45sbs

Identifier external to the Galileo platform to be stored and associated with the respective account.
primaryAccount No Number PAN or PRN

123456789012

PAN (16 digit card number) or PRN (12 digit account identifier) of the primary account a secondary account is to be associated with. This is only necessary when creating a secondary card.
sharedBalance Conditional Boolean 0 or 1

1

Define whether or not an additional account will share the balance with the primary. Should never be set to a value of 1 if the primaryAccount is not passed. 0=false, 1=true
userData No String Letters, numbers and spaces. Maximum length of 50 characters.

a4434gg44

Identifier external to Galileo platform to be stored and associated with the respective account. The most common usage of this parameter has been tracking the identity of affiliate marketing traffic.  
offline No Boolean 0 or 1

1

0=on line transaction, 1=offline transaction
verifyOnly No Boolean 0 or 1

0

If a value of '1' is passed, the parameter data will be tested only. No transaction will be committed.
embossLine2 No String Alphanumeric 0-28 characters in length, "-" allowed.

Example 2nd Line Emboss

Second line card emboss text.
cipStatus No Integer 0, 1, or 2

0

0 or empty=Run CIP as normally configured, 1=Capture enrollment data and run CIP -- do not create account, 2=Process as normal -- do not run CIP (even if CIP processing is enabled).
providerAssessedFee No Number Monetary amount greater than 0.

2.50

Fee amount assessed by the API consumer. Value passed to Galileo only for informational purposes.
loadFromAccountNo No String PAN or PRN

123456789012

Same as accountNo in validation. This parameter is used when loading the account at the time of creation and wanting loaded funds to be transferred from another account within the same card program.
sweepDate No Date YYYY-MM-DD If provided, sweepDate specifies the last date that a daily sweep should be performed. If daily account sweeping is not configured for your product/program, this parameter can be ignored.
occupation No String Up to 60 character alphanumeric including space, _, -, ., @, &, and comma.

Project Manager

Cardholder occupation
incomeSource No String Up to 60 character alphanumeric including space, _, -, ., @, &, and comma.

Kroger Food & Drug

Cardholder employer name or income source.
CIP response
The createAccount method will return customer identification program (CIP) data when real-time CIP is enabled. The XML node in response is the parent node to potentially several CIP provider responses. Currently only CIP response is for the APS CIP. The child node of the node has the following possible values: 'Pass', 'Refer', or 'Fail'. A 'model_results' node will contain results specific to the CIP decision tree setup.
Note
Note that card_number, expiry_date and card_security_code can be returned in the createAccount() response. By default a masked PAN is returned for card_number and an unary tag is returned for expiry_date and card_security code. With approval (as with other methods) these full elements can be returned in the method call response.
Status codes
Status Code description
0 Success. You have successfully created an account.
2 Invalid parameter(s). Bad parameters were sent with the transaction.
24 Duplicate transaction. A duplicate enrollment was submitted.
28 Unauthorized product.
100 Success (Verify). Valid parameters were passed but no account was created. Verify only parameter was passed.
407-03 Invalid instant issue card. An attempt was made to use an ii card which has been sold.
407-04 Load amount outside of load limits. Too much money is being loaded.
407-05 Could not create account. Contact Galileo for troubleshooting.
407-06 Could not load card. Contact Galileo for troubleshooting.
407-07 Primary account is invalid. An instant issue account is being used in the primary account field.
407-08 Secondary accounts cannot be added to secondary accounts. Attempting to add a secondary account to a secondary account.
407-09 Maximum number of secondary accounts exceeded. The limit of secondary accounts is exceeded for the PID.
407-10 ID type 2 is required as main ID for running CIP (only occurs when product is configured to run ID validation on new accounts). The incorrect ID type is being passed.
407-11 Account created, ID validation failed. Customer's personal info has failed the ID check.
407-12 An application with the same ID has already been submitted. Duplicate SSNs were used for enrollment.
407-13 The cipStatus parameter was set to 1--Capture enrollment date and run CIP--an account was not created.
407-14 Success. Partial limit violation-Only part of the payment was applied due to load limits.
407-15 Success. Delayed payment-Payment is pending due to load limits
407-16 Card is marked as fraudulent. Used for instant issue cards which have been swiped before issuance.
407-17 Card not allocated to your store for issuance. This is a mapping issue with the location and instant issue card group ID.
407-18 Account provided (to loan money from) could not be found.
407-19 A load was attempted for a non-positive amount. A negative load amount was passed.
-1 Indicates that the application record failed to update or return. Contact Galileo for troubleshooting.

Response
Response Description Example value
new_account Acts as a logical separator if multiple accounts are created on the same call. <new_account>
  <pmt_ref_no>
  <product_id>
  <galileo_account_number>
  <cip>
  <card_id>
  <card_number>
  <expiry_date>
  <card_security_code>
</new_account>
pmt_ref_no A Galileo generated account number. 074129972670
product_id The product ID. 560
galileo_account_number The Galileo account number. 935631
cip Cardholder identification process. Acts as a logical separator. <cip>
  <aps>
  <status>
  <model_results>
  </aps>
</cip>
status Indicates if account creation passed or failed. Pass
model_results Acts as a logical separator between models. <model_results>
  <model>
</model_results>
model_name The details of the ID verification model, and how it is scored. (The criteria are used for it are proprietary information shared between the CIP vendor and the issuing bank). Also, relates to the template used to verify the identity of the cardholder data sent to the createAccount() endpoint. MODELA
model_version A version number for the model used. 1
code In a model, lists the pass number. Pass 01
text Plain text description of the code value. SSN Matches Address
card_id ID associated with the card. 12345
card_number The PAN of the card 123412XXXXXX1234
expiry_date Expiration date of the card. 2009-05-22
card_security_code The card verification value (cvv) is a card anti-fraud measure. 123
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
                    
# The following shell script will use cURL to call createAccount and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/createAccount \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'prodId=501'
        
// The following Java code will make a createAccount call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("prodId", "501"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/createAccount"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a createAccount call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'prodId': '501'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/createAccount', data=payload, headers={'response-content-type': 'json'}) print('createAccount response code: ' + r.json()['status_code'])
        
// The following PHP code will make a createAccount call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/createAccount'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'prodId'=>'501'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a createAccount call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/createAccount" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&prodId{5}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "501"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a createAccount call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/createAccount") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "prodId" => "501"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    createAccount() response example
                                            
                                            <response>
                                               <status_code>0</status_code>
                                               <status>Success</status>
                                               <system_timestamp>2019-06-21 08:14:20</system_timestamp>
                                               <response_data>
                                                 <pmt_ref_no>999900141667</pmt_ref_no>
                                                 <product_id>5094</product_id>
                                                 <galileo_account_number>524</galileo_account_number>
                                                 <cip>null</cip>
                                                 <card_id>525</card_id>
                                                 <card_number>512773XXXXXX3259</card_number>
                                                 <expiry_date>null</expiry_date>
                                                 <card_security_code>null</card_security_code>
                                               </response_data>
                                               <processing_time>1.755</processing_time>
                                               <echo>
                                                 <transaction_id>12345a</transaction_id>
                                                 <provider_transaction_id>77bb</provider_transaction_id>
                                                 <provider_timestamp>2019-06-21 09:14:20</provider_timestamp>
                                               </echo>
                                            </response>
                                            
                                                            
                    setAlerts() response example-No alert
                                    
                                    <?xml version="1.0" encoding="UTF-8"?>
                                    <response>
                                       <status_code>0</status_code>
                                       <status>Success</status>
                                       <system_timestamp>2018-11-22 14:37:37</system_timestamp>
                                       <response_data/>
                                       <processing_time>1.184</processing_time>
                                       <echo>
                                         <transaction_id>20161122163431_431247944805</transaction_id>
                                         <provider_transaction_id/>
                                         <provider_timestamp/>
                                       </echo>
                                    </response>
                                    
                                    setAlerts() response example-Alert given
                                    
                                    <?xml version="1.0" encoding="UTF-8"?>
                                    <response>
                                       <status_code>404-01</status_code>
                                       <status>Alert message type is not configured.</status>
                                       <system_timestamp>2018-11-22 14:37:37</system_timestamp>
                                       <response_data>
                                         <badMsgIds>
                                           <badMsgId>Alert type "BADJ" not found</badMsgId>
                                         </badMsgIds>
                                       </response_data>
                                       <processing_time>1.174</processing_time>
                                       <echo>
                                         <transaction_id>20161122163431_431247944825</transaction_id>
                                         <provider_transaction_id/>
                                         <provider_timestamp/>
                                       </echo>
                                    </response>
                                                    
Duplicate use of Customer ID
Parameters
CIP response
Status codes
Response
// voidCreateAccount()
Cancels the account that was created by createAccount(). Either the transactionId used in the createAccount() call, or the optional accountNo parameter must be passed in order to identify and void the created account. The accountNo parameter can be either the PRN as returned by createAccount() or the PAN that was later retrieved.
Parameters
Parameter Required Data type Pattern Notes Example value
apiLogin Yes String 50 characters or less Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address. AbC123-9999
apiTransKey Yes String 15 characters or less Web Service Password as provided and authenticated by Galileo for the requesting IP Address. 4sb62fh6w4h7w34g
providerId Yes Integer 10 digits or less Galileo issued unique Provider identifier. 9999
transactionId Yes String 60 characters or less A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction. 9845dk-39fdk3fj3-4483483478
accountNo No String PAN or PRN Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier). 074103447228
verifyOnly No Boolean 0 or 1 If a value of '1' is passed, the parameter data will be tested only. No transaction will be committed. 0
type Yes Integer 1 or 2 1 = Cancel account; 2 = Reset account (instant issue) 2

Status codes
Status   Code description  
0 Success
2 Invalid parameter(s)
100 Success (Verify)
412-01 Transaction not found.
412-02 Method not allowed according to product configuration.
412-03 Secondary or related cards have been added to account; account cannot be voided.
412-04 Transactions have been performed against the account; account cannot be voided.
412-05 Void not allowed after product changed.
412-06 Void not allowed on accounts with multiple payments.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>
   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call voidCreateAccount and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/voidCreateAccount \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228' \ -d 'type=2'
        
// The following Java code will make a voidCreateAccount call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); params.put("type", "2"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/voidCreateAccount"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a voidCreateAccount call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228', 'type': '2'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/voidCreateAccount', data=payload, headers={'response-content-type': 'json'}) print('voidCreateAccount response code: ' + r.json()['status_code'])
        
// The following PHP code will make a voidCreateAccount call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/voidCreateAccount'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228', 'type'=>'2'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a voidCreateAccount call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/voidCreateAccount" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}&type{6}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228", "2"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a voidCreateAccount call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/voidCreateAccount") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228", "type" => "2"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    voidCreateAccount() response example
                                            
                                            <?xml version="1.0" encoding="UTF-8"?>
                                            <response>
                                                <status_code>0</status_code>
                                                <status>Success</status>
                                                <system_timestamp>2011-01-31
                                                13:37:18</system_timestamp>
                                                <response_data/>
                                                <processing_time>1.755</processing_time>
                                                <echo>
                                                   <transaction_id>12345a</transaction_id>
                                                   <provider_transaction_id>77bb</provider_transaction_id>
                                                   <provider_timestamp>2013-02-06
                                                   10:10:10</provider_timestamp>
                                                </echo>
                                            </response>	
                                                            
Parameters
Status codes
Response
// updateEnrollment()
Update an uncompleted enrollment.
Note: This method is designed to be used as part of a specific enrollment strategy. Please see the 'Customer Enrollment Strategies' sub-section within the Overview section of this documentation for more information.
Note: Validation done on a SSN is limited to a length check.

Parameters()
Parameter Required Data type Pattern Notes Example value
apiLogin Yes String 50 characters or less Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address. AbC123-9999
apiTransKey Yes String 15 characters or less Web Service Password as provided and authenticated by Galileo for the requesting IP Address. 4sb62fh6w4h7w34g
providerId Yes Integer 10 digits or less Galileo issued unique Provider identifier. 9999
transactionId Yes String 60 characters or less A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction. 9845dk-39fdk3fj3-4483483478
id No String See section on ID Types. Unique identifier for Cardholder, usually SSN (see Appendix Enumerations section on Customer ID Types). 123456789
idType Conditional Integer See section on ID Types. Identifies the type of parameter ID (see Appendix Enumerations section on Customer ID Types). 2
id2 No String See Customer ID Type section. Unique identifier for a Cardholder, used for a secondary ID. 123456789012|UT|12/25/2020
idType2 Conditional Integer See section on ID Types. Identifies the type of ID used in the id2 response field. (See Customer ID Types in documentation). 1
firstName No String 2-30 characters; letters, spaces, numbers, and some punctuation:
, . ? @ & ! # ' ~ * - ; +.
Cardholder's first name Ed
middleName No String Letters and spaces, maximum length of 30 characters. Cardholder's middle name W
lastName No String 30 characters; letters, spaces, numbers, and some punctuation:
, . ? @ & ! # ' ~ * - ; +.
Cardholder's last name Harley
dateOfBirth No Date YYYY-MM-DD, minimum age per the business rules for the program. Cardholder's birth date 1980-01-01
address1 No String Maximum length -- 40 characters. Cannot be a P.O. Box. Cardholder's address line 1 33 Maple Street
address2 No String Maximum length of 30 characters. Cardholder's address line 2 #4B
city No String Letters and spaces, maximum length 20 characters. Cardholder's city Salt Lake City
state No String Valid 2 character state abbreviation. Cardholder's state UT
postalCode No String 12345 or 12345-1234 (US), K1A-1A1 (CA) Cardholder's postal code (zip code) 84121
countryCode No Number Three digit country code. Three digit ISO numeric UN M49 country code; Example USA=840, Canada=124. 840
expressMail No Boolean 0 or 1 Use express mail to send the new card plastic. 0
primaryPhone No Number Valid phone number Cardholder's primary phone number 8013656050
otherPhone No Number Valid phone number Cardholder's other phone number 8013656050
mobilePhone No Number Valid phone number Cardholder's mobile phone number 8013656050
mobileCarrierId Conditional Integer Configurable list Cardholder's mobile carrier -- configurable list. 8
email No String Email Address Cardholder's email user@fakedomain.com
webUid No String Must be unique. Start with a letter. Only letters and numbers. Case insensitive. Cardholder website username 4j9KH3kkdh
webPwd No String At least 8 characters and have an uppercase character, lower case character and a number. Cardholder website password eharley
secretQuestion No String Letters, spaces and '?', maximum length of 50 characters. Secret Question What was the name of your first pet?
secretAnswer No String Letters and spaces, maximum length of 50 characters. Secret Answer Larry
monthlyIncome No Amount Monetary amount greater than 0 Currency amounts passed as whole or fractional amounts, examples: '100.00', '100', or '100.73'. 1000
monthlyLiab No Amount Monetary amount greater than 0 Currency amounts passed as whole or fractional amounts, examples: '100.00', '100', or '100.73'. 1000

Status codes
Status Code description
0 Success
2 Invalid parameter(s)
30 Invalid enrollment transaction
31 Unknown or unregistered transaction.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>
   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
echo Displays transaction id information.  
transaction_id A number that represents a transaction. Ve8mEK6jUKulAMy7xYGu
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call updateEnrollment and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/updateEnrollment \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'firstName=Ed' \ -d 'lastName=Harley' \ -d 'address1=33 Maple Street' \ -d 'address2=#4B' \ -d 'city=Salt Lake City' \ -d 'state=UT' \ -d 'postalCode=84121'
        
// The following Java code will make a updateEnrollment call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("firstName", "Ed"); params.put("lastName", "Harley"); params.put("address1", "33 Maple Street"); params.put("address2", "#4B"); params.put("city", "Salt Lake City"); params.put("state", "UT"); params.put("postalCode", "84121"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/updateEnrollment"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a updateEnrollment call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'firstName': 'Ed', 'lastName': 'Harley', 'address1': '33 Maple Street', 'address2': '#4B', 'city': 'Salt Lake City', 'state': 'UT', 'postalCode': '84121'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/updateEnrollment', data=payload, headers={'response-content-type': 'json'}) print('updateEnrollment response code: ' + r.json()['status_code'])
        
// The following PHP code will make a updateEnrollment call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/updateEnrollment'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'firstName'=>'Ed', 'lastName'=>'Harley', 'address1'=>'33 Maple Street', 'address2'=>'#4B', 'city'=>'Salt Lake City', 'state'=>'UT', 'postalCode'=>'84121'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a updateEnrollment call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/updateEnrollment" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&firstName{5}&lastName{6}&address1{7}&address2{8}&city{9}&state{10}&postalCode{11}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "Ed", "Harley", "33 Maple Street", "#4B", "Salt Lake City", "UT", "84121"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a updateEnrollment call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/updateEnrollment") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "firstName" => "Ed", "lastName" => "Harley", "address1" => "33 Maple Street", "address2" => "#4B", "city" => "Salt Lake City", "state" => "UT", "postalCode" => "84121"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    updateEnrollment() response example
                                            
                                            <?xml version="1.0" encoding="UTF-8"?>
                                            <response>
                                               <status_code>0</status_code>
                                               <status>Success</status>
                                               <system_timestamp>2011-02-01 12:46:08</system_timestamp>
                                               <response_data/>
                                               <processing_time>0.605</processing_time>
                                            <echo>
                                               <transaction_id>12345a</transaction_id>
                                               <provider_transaction_id>77bb</provider_transaction_id>
                                               <provider_timestamp>2013-02-06 10:10:10</provider_timestamp>
                                            </echo>
                                            </response>
                                            
                                                            
Parameters
Status codes
Response
// runEnrollmentCip()
This method allows the consumer to run or re-run the CIP process on a customer enrollment.
Note: This method is designed to be used as part of a specific enrollment strategy.
Note: Validation done on a SSN is limited to a length check.
Parameters
Parameter Required Data type Pattern Notes Example value
apiLogin Yes String 50 characters or less Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address. AbC123-9999
apiTransKey Yes String 15 characters or less Web Service Password as provided and authenticated by Galileo for the requesting IP Address. 4sb62fh6w4h7w34g
providerId Yes Integer 10 digits or less Galileo issued unique Provider identifier. 9999
transactionId Yes String 60 characters or less A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction. 9845dk-39fdk3fj3-4483483478
id No String See section on ID Types. Unique identifier for Cardholder, usually SSN (see Appendix Enumerations section on Customer ID Types). 123456789
idType Conditional Integer See section on ID Types. Identifies the type of parameter ID (see Appendix Enumerations section on Customer ID Types). 2
No additional parameters beyond those in the base form parameters are required. The enrollment data is located using the transactionId. The transactionId must be the same transactionId that was passed in the related createAccount() call.
The enrollment data is primarily located using the transactionId. The transactionId must be the same transactionId that was passed in the related createAccount() call. If the enrollment is not found using the transactionId, id and IdType will optionally be used.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
30 Invalid enrollment transaction
31 Unknown or unregistered transaction.
483-01 Failed CIP
483-02 Enrollment record could not be found.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>
   </new_account>
</response_data>
cip Cardholder identification process. Acts as a logical separator. <cip>
  <aps>
  <status>
  <model_results>
  </aps>
</cip>
aps Acts as a logical separator for status and model information. <aps>
  <status>
  <model_results>
</aps>
model_name The details of the ID verification model, how it is scored, and what criteria are used for it. Relates to the template used to verify the identity of the cardholder data sent to the createAccount end point. (This information is proprietary information shared between the CIP vendor and the issuing bank). MODELA
model_results Acts as a logical separator between models. <model_results>
  <model>
</model_results>
model_version Version number for the model used. 1
code In a model run, lists the pass number. Pass 01
model Acts as a logical separator. Relates to the template used to verify the identity of the cardholder data sent to the createAccount end point. <model>
  <model_name>
  <model_version>
 <code>
</model>
code In a model run, lists the pass number. Pass 01
text Plain text description of the code value. SSN Matches Address
processing_time The time elapsed in processing the transaction. 1.723
echo A data structure that displays transaction id information. <echo>
  <transaction_id>...</transaction_id>
</echo>
transaction_id A number that represents a transaction. Ve8mEK6jUKulAMy7xYGu
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call runEnrollmentCip and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/runEnrollmentCip \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'id=123456789' \ -d 'idType=2'
        
// The following Java code will make a runEnrollmentCip call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("id", "123456789"); params.put("idType", "2"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/runEnrollmentCip"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a runEnrollmentCip call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'id': '123456789', 'idType': '2'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/runEnrollmentCip', data=payload, headers={'response-content-type': 'json'}) print('runEnrollmentCip response code: ' + r.json()['status_code'])
        
// The following PHP code will make a runEnrollmentCip call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/runEnrollmentCip'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'id'=>'123456789', 'idType'=>'2'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a runEnrollmentCip call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/runEnrollmentCip" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&id{5}&idType{6}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "123456789", "2"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a runEnrollmentCip call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/runEnrollmentCip") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "id" => "123456789", "idType" => "2"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    runEnrollmentCip() response example
                                            
                                            <?xml version="1.0" encoding="UTF-8"?>
                                               <response>
                                               <status_code>0</status_code>
                                               <status>Success</status>
                                               <system_timestamp>2012-06-28 15:32:17</system_timestamp>
                                                  <response_data>
                                                     <cip>
                                                        <aps>
                                                           <status>Pass</status>
                                                           <model_results>
                                                              <model>
                                                              <model_name>METALN</model_name>
                                                              <model_version>1</model_version>
                                                              <code>Pass 01</code>
                                                              <text>SSN Matches Address</text>
                                                           </model>
                                                           </model_results>
                                                              <date_time>2012-06-28 03:32:17</date_time>
                                                              </aps>
                                                              <aps>
                                                           <status>Pass</status>
                                                        <model_results>
                                                       <model>
                                                     <model_name>METALN</model_name>
                                                     <model_version>1</model_version>
                                                        <code>Pass 01</code>
                                                           <text>SSN Matches Address</text>
                                                        </model>
                                                        </model_results>
                                                     <date_time>2012-06-28 12:49:17</date_time>
                                                     </aps>
                                                     </cip>
                                                  </response_data>
                                            <processing_time>0.882</processing_time>
                                            <echo>
                                                  <transaction_id>12345a</transaction_id>
                                                  <provider_transaction_id>77bb</provider_transaction_id>
                                                  <provider_timestamp>2013-02-06 10:10:10</provider_timestamp>
                                            </echo>
                                            </response>
                                            
                                                            
Parameters
Status codes
Response
// completeEnrollment()
This method allows the consumer to complete or finalize an enrollment that was previously submitted with a createAccount() call.
Note: This method is designed to be used as part of a specific enrollment strategy. Please see the 'Customer Enrollment Strategies' sub-section within the Overview section of this documentation for more information.
Parameters
The enrollment data is located using the transactionId. The transactionId must be the same transactionId that was passed in the related createAccount() call.
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
prodId Yes Integer Integer 501 Product ID
location No String

Must be a number if type is 0. Must be less than 15 if type is 1.

a455-3483

Unique location identifier. See location types.
locationType No Integer

0, 1, or 2

1

  • 0=Galileo Location ID
  • 1=Partner Location ID
  • 2=Don't Validate
accountNo No String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
externalAccountId No String

Letters and numbers, maximum length 30 characters.

553b45sbs

Identifier external to the Galileo platform to be stored and associated with the respective account.
primaryAccount No Number

PAN or PRN

123456789012

PAN (16 digit card number) or PRN (12 digit account identifier) of the primary account a secondary account is to be associated with. This is only necessary when creating a secondary card.
sharedBalance Conditional Boolean

0 or 1

1

Define whether or not an additional account will share the balance with the primary. Should never be set to a value of 1 if the primaryAccount is not passed. 0=false, 1=true
offline No Boolean

0 or 1

1

0=on line transaction, 1=offline transaction
embossLine2 No String

Alphanumeric 0-28 characters in length, "-" allowed.

Example 2nd Line Emboss

Second line card emboss text.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
30 Invalid enrollment transaction.
31 Unknown or unregistered transaction.
480-01 Card not issuable.
480-02 Customer already has this product issued.
480-03 Invalid instant issue card.
480-04 Load amount outside of load limits.
480-05 Could not create account.
480-06 Could not load card.
480-07 Primary account is invalid.
480-08 Secondary accounts cannot be added to secondary accounts.
480-09 Maximum number of secondary accounts exceeded.
480-10 ID type 2 is required as main ID for running CIP.
480-11 Account created, ID Validation failed.
480-12 An application with the same ID has already been submitted.
480-13 Application successfully started and CIP run.
480-14 Success -- partial limit violation.
480-15 Success -- delayed payment.
480-16 Card is marked as fraudulent.
480-17 Card not allocated to your store for issuance.
480-25 Enrollment has already been completed and cannot be processed again.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example
status_code The status of the response. 0
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
  <new_account>
  </new_account>
</response_data>
new_account Acts as a logical separator if multiple accounts are created on the same call. <new_account>
  <pmt_ref_no>
  <product_id>
  <galileo_account_number>
  <cip>
  <card_id>
  <card_number>
  <expiry_date>
  <card_security_code>
</new_account>
pmt_ref_no A Galileo generated account number. 008103023340
product_id Galileo generated product Id of the account. 207
galileo_account_number Galileo generated integer account number, also known as balance ID. 1181464
processing_time The time elapsed in processing the transaction. 1.723
transaction_id A number that represents a transaction. Ve8mEK6jUKulAMy7xYGu
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call completeEnrollment and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/completeEnrollment \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'prodId=501'
        
// The following Java code will make a completeEnrollment call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("prodId", "501"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/completeEnrollment"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a completeEnrollment call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'prodId': '501'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/completeEnrollment', data=payload, headers={'response-content-type': 'json'}) print('completeEnrollment response code: ' + r.json()['status_code'])
        
// The following PHP code will make a completeEnrollment call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/completeEnrollment'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'prodId'=>'501'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a completeEnrollment call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/completeEnrollment" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&prodId{5}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "501"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a completeEnrollment call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/completeEnrollment") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "prodId" => "501"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    completeEnrollment() response example
                                            
                                            <?xml version="1.0" encoding="UTF-8"?>
                                            <response>
                                               <status_code>0</status_code>
                                               <status>Success</status>
                                               <system_timestamp>2012-06-28 15:32:17</system_timestamp>
                                               <response_data>
                                                 <new_account>
                                                   <pmt_ref_no>074129975749</pmt_ref_no>
                                                   <product_id>560</product_id>
                                                   <galileo_account_number>935845</galileo_account_number>
                                                 </new_account>
                                               </response_data>
                                               <processing_time>0.882</processing_time>
                                               <echo>
                                                 <transaction_id>12345a</transaction_id>
                                                 <provider_transaction_id>77bb</provider_transaction_id>
                                                 <provider_timestamp>2013-02-06 10:10:10</provider_timestamp>
                                               </echo>
                                            </response>
                                                            
Parameters
Status codes
Response
// startEnrollment()
Start a new enrollment, run CIP (KYC) and/or calculate credit limit (applicable only to credit products).
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
prodId Yes Integer Integer 501 Product ID
id No String

See section on ID Types.

123456789

Unique identifier for Cardholder, usually SSN (see Appendix Enumerations section on Customer ID Types).
idType Conditional Integer

See section on ID Types.

2

Identifies the type of parameter ID (see Appendix Enumerations section on Customer ID Types).
id2 No String

See Customer ID Type section.

123456789012|UT|12/25/2020

Unique identifier for a Cardholder, used for a secondary ID.
idType2 Conditional Integer

See section on ID Types.

1

Identifies the type of ID used in the id2 response field. (See Customer ID Types in documentation).
location No String

Must be a number if type is 0. Must be less than 15 if type is 1.

a455-3483

Unique location identifier. See location types.
locationType No Integer

0, 1, or 2

1

  • 0=Galileo Location ID
  • 1=Partner Location ID
  • 2=Don't Validate
locale No String

Accepted values = "en_US", "es_US", "fr_CA", and "en_CA"

en_US

Sets customer language preference. Default is "en_US".
firstName No String

1-30 characters; letters, spaces, numbers, and some punctuation:
, . ? @ & ! # ' ~ * - ; +.

Ed

Cardholder's first name
middleName No String

Letters and spaces, maximum length of 30 characters.

W

Cardholder's middle name
lastName No String

30 characters; letters, spaces, numbers, and some punctuation:
, . ? @ & ! # ' ~ * - ; +.

Harley

Cardholder's last name
dateOfBirth No Date

YYYY-MM-DD, minimum age per the business rules for the program.

1980-01-01

Cardholder's birth date
address1 No String

Maximum length -- 40 characters. Cannot be a P.O. Box.

33 Maple Street

Cardholder's address line 1
address2 No String

Maximum length of 30 characters.

#4B

Cardholder's address line 2
city No String

Letters and spaces, maximum length 20 characters.

Salt Lake City

Cardholder's city
state No String

Valid 2 character state abbreviation.

UT

Cardholder's state
postalCode No String

12345 or 12345-1234 (US), K1A-1A1 (CA)

84121

Cardholder's postal code (zip code)
countryCode No Number

Three digit country code.

840

Three digit ISO numeric UN M49 country code; Example USA=840, Canada=124.
expressMail No Boolean

0 or 1

0

Use express mail to send the new card plastic.
primaryPhone No Number

Valid phone number

8013656050

Cardholder's primary phone number
otherPhone No Number

Valid phone number

8013656050

Cardholder's other phone number
mobilePhone No Number

Valid phone number

8013656050

Cardholder's mobile phone number
email No String

Email Address

user@fakedomain.com

Cardholder's email
webUid No String

Must be unique. Start with a letter. Only letters and numbers. Case insensitive.

4j9KH3kkdh

Cardholder website username
webPwd No String

At least 8 characters and have an uppercase character, lower case character and a number.

eharley

Cardholder website password
secretQuestion No String

Letters, spaces and '?', maximum length of 50 characters.

What was the name of your first pet?

Secret Question
secretAnswer No String

Letters and spaces, maximum length of 50 characters.

Larry

Secret Answer
userData No String

Letters, numbers and spaces. Maximum length of 50 characters.

a4434gg44

Identifier external to Galileo platform to be stored and associated with the respective account. The most common usage of this parameter has been tracking the identity of affiliate marketing traffic.
offline No Boolean

0 or 1

0

0=on line transaction, 1=offline transaction
verifyOnly No Boolean

0 or 1

0

If a value of '1' is passed, the parameter data will be tested only. No transaction will be committed.
runCip No Boolean

0 or 1

1

A value or 0=false or 1=true will override product CIP settings.
monthlyIncome No Amount

Monetary amount greater than 0

1000

Currency amounts passed as whole or fractional amounts, examples: '100.00', '100', or '100.73'.
monthlyLiab No Amount

Monetary amount greater than 0

1000

Currency amounts passed as whole or fractional amounts, examples: '100.00', '100', or '100.73'.

Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account.
504-01 Card not issuable.
504-12 An application with the same ID has already been submitted.
504-17 Card not allocated to your store for issuance.
504-25 An error occurred calculating credit limit.
504-26 Unable to extend credit for this application.
504-27 VERIFY ONLY: An error occurred calculating credit limit.
504-28 VERIFY ONLY: Unable to extend credit for this application.
504-29 Could not create application.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example
status_code The status of the response. 0
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
  <new_account>
  </new_account>
</response_data>
appid The unique identifier for the enrollment application. 1199159
processing_time The time elapsed in processing the transaction. 1.723
transaction_id A number that represents a transaction. Ve8mEK6jUKulAMy7xYGu
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call startEnrollment and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/startEnrollment \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'prodId=501'
        
// The following Java code will make a startEnrollment call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("prodId", "501"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/startEnrollment"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a startEnrollment call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'prodId': '501'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/startEnrollment', data=payload, headers={'response-content-type': 'json'}) print('startEnrollment response code: ' + r.json()['status_code'])
        
// The following PHP code will make a startEnrollment call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/startEnrollment'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'prodId'=>'501'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a startEnrollment call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/startEnrollment" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&prodId{5}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "501"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a startEnrollment call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/startEnrollment") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "prodId" => "501"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    startEnrollment() response example
                                            
                                            <?xml version="1.0" encoding="UTF-8"?>
                                            <response>
                                               <status_code>0</status_code>
                                               <status>Success</status>
                                               <system_timestamp>2012-06-28 15:32:17</system_timestamp>
                                               <response_data>
                                                 <appId>074129975749</appId>
                                               </response_data>
                                               <processing_time>0.882</processing_time>
                                               <echo>
                                                 <transaction_id>12345a</transaction_id>
                                                 <provider_transaction_id>77bb</provider_transaction_id>
                                                 <provider_timestamp>2013-02-06 10:10:10</provider_timestamp>
                                               </echo>
                                            </response>
                                                            
Parameters
Status codes
Response
// verifyEnrollment()
Look up an existing enrollment by transactionId or customer idto view information and status. The method will return enrollment data, credit limit (if applicable), enrollment date, and transaction_ID of initial enrollment (if started with startEnrollment() method).
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
id No String

See section on ID Types.

123456789

Unique identifier for Cardholder, usually SSN (see Appendix Enumerations section on Customer ID Types).
idType Conditional Integer

See section on ID Types.

2

Identifies the type of parameter ID (see Appendix Enumerations section on Customer ID Types).

Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account.
505-01 Enrollment record could not be found.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example
status_code The status of the response. 0
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
  <new_account>
  </new_account>
</response_data>
processed_date The date the response data was processed. 2009-05-22
app_trans_id The unique identifier for the enrollment application. 1199159
application A data structure for the information contained in an application. <application>
  <appId>1199159>/appId>
   x
   <monthlyIncome/>
   <monthlyLiab/>
   </application>
appId The unique identifier for the enrollment application. 1199159
appDate Timestamp for the application transaction. 2015-05-06 12:20:44
prodId Galileo generated product Id of the account. 560
idType Helps prove a cardholder identity. Generally sent as parameters to createAccount but can be put into the system via other systems, such as the card holder website. (See Enumerations > Customer ID Types in the documentation). 2
id Helps prove a cardholder identity. Generally sent as parameters to createAccount but can be put into the system via other systems, such as the card holder website. 433999222
idType2 Helps prove a cardholder identity. Generally sent as parameters to createAccount but can be put into the system via other systems, such as the card holder website. (See Enumerations > Customer ID Types in the documentation). 2
id2 Helps prove a cardholder identity. Generally sent as parameters to createAccount but can be put into the system via other systems, such as the card holder website. 3
locale Language code in use locally. en_US
firstName A person's first name as listed on the account. 1199159
middleName A person's middle name as listed on the account. Elizabeth
lastName A person's last name as listed on the account. Bluth
dateOfBirth Birthdate of the person associated with the account. Nov 11, 1960
address1 Street and residence number on the account. 1234 North 678 East
address2 Additional address information on the account. #2
city City for address information. Calgary
state State for address information. AB
postalCode A postal code for the address information. M5J2B6
expressMail Does the profile use express mail service? N
primaryPhone The main phone number on account. 8013332222
otherPhone A phone listed on the account. 8012224444
mobilePhone The mobile phone number of a person as listed in a profile. 8017245521
mobileCarrierId A code for the mobile phone service provider. ATT
email The email address on a profile. 3asdfaw3fadf@asdfasdf.com
userData Identifier external to the Galileo platform to be stored and associated with the respective account. The most common usage of this parameter is tracking the identity of affiliate marketing traffic. a4434gg44
monthlyIncome The person on the profile's gross income for one month. 3500
monthlyLiab The person on the profile's total liabilities for one month. 1768
processing_time The time elapsed in processing the transaction. 1.723
transaction_id A number that represents a transaction. Ve8mEK6jUKulAMy7xYGu
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call verifyEnrollment and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/verifyEnrollment \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'id=123456789' \ -d 'idType=2'
        
// The following Java code will make a verifyEnrollment call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("id", "123456789"); params.put("idType", "2"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/verifyEnrollment"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a verifyEnrollment call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'id': '123456789', 'idType': '2'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/verifyEnrollment', data=payload, headers={'response-content-type': 'json'}) print('verifyEnrollment response code: ' + r.json()['status_code'])
        
// The following PHP code will make a verifyEnrollment call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/verifyEnrollment'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'id'=>'123456789', 'idType'=>'2'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a verifyEnrollment call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/verifyEnrollment" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&id{5}&idType{6}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "123456789", "2"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a verifyEnrollment call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/verifyEnrollment") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "id" => "123456789", "idType" => "2"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    verifyEnrollment() response example
                                            
                                            <?xml version="1.0" encoding="UTF-8"?>
                                            <response>
                                               <status_code>0</status_code>
                                               <status>Success</status>
                                               <system_timestamp>2015-05-06 11:17:29</system_timestamp>
                                               <response_data>
                                                 <processed_date/>
                                                 <app_trans_id>637196758</app_trans_id>
                                                 <application>
                                                   <appId>1199159</appId>
                                                   <appDate>2015-05-06 12:20:44</appDate>
                                                   <prodId>560</prodId>
                                                   <idType>2</idType>
                                                   <id>433999222</id>
                                                   <idType2/>
                                                   <id2/>
                                                   <locale>en_US</locale>
                                                   <firstName>Bob</firstName>
                                                   <middleName>Jones</middleName>
                                                   <lastName>Smith</lastName>
                                                   <dateOfBirth/>
                                                   <address1>22 Maple</address1>
                                                   <address2/>
                                                   <city>Salt Lake City</city>
                                                   <state>UT</state>
                                                   <postalCode>84121</postalCode>
                                                   <expressMail>Y</expressMail>
                                                   <primaryPhone>8015554444</primaryPhone>
                                                   <otherPhone/>
                                                   <mobilePhone/>
                                                   <mobileCarrierId/>
                                                   <email/>
                                                   <userData/>
                                                   <monthlyIncome/>
                                                   <monthlyLiab/>
                                                 </application>
                                               </response_data>
                                               <processing_time>0.488</processing_time>
                                               <echo>
                                                 <transaction_id>637196758</transaction_id>
                                                 <provider_transaction_id>GAAP test</provider_transaction_id>
                                                 <provider_timestamp>2015-05-06 11:15:01</provider_timestamp>
                                               </echo>
                                            </response>
                                                            
Parameters
Status codes
Response
// updateAccount()
Updates the cardholder's personal information for an existing account. Only required parameters and parameters to be modified must be provided. Parameters that are not being modified can be left blank.
Nullifying data elements
The The following updateAccount() parameters allow for the value 'null' to passed: firstName, middleName, lastName, address1, address2, city, state, postalCode, primaryPhone, otherPhone, mobilePhone, webUid, secretQuestion, secretAnswer, and mailBounced. When passing the string 'null' as the value for any of the above parameters, the respective account data element will be updated to a value of null. A provider configuration is required for nullifying customer email address.
Updating customer ID
The Primary customer ID (id, idType) can conditionally updated with the updateAccount() method. Primary ID (id, idType) can be updated as long as the respective customer account has not passed CIP. Secondary customer ID can be updated regardless of customer CIP status.
Updating ship-to address
The When updating the ship-to address for a customer the elements shipToAddress1, shipToCity, shipToState, and shipToPostalCode are required. The shipToAddress2 is optional. The current customer ship-to address data can be retrieved in the getAccountCards() method call. This value should be passed before any new card is to be sent to that address. The shipto address is only used for the next shipment, and not subsequent shipments. In the United States for compliance, you must maintain a physical address for the cardholder and the primary address. Shipto is designed for temporary use for a card.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

Unique transaction identifier (generated by provider). There are rare circumstances where allowed characters are more limited. Refer to individual method definitions for any variances.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
firstName No String

Letters and spaces, maximum length -- 30 characters.

Ed

Cardholder's first name
middleName No String

Letters and spaces. Maximum length - 30 characters.

W

Cardholder's middle name
lastName No String

Letters and spaces. Maximum length -- 30 characters.

Harley

Cardholder's last name
dateOfBirth No Date

YYYY-MM-DD, Minimum age per the business rules for the program.

1980-01-01

Cardholder's birth date
address1 No String

Maximum length -- 30 characters. Adding a PO BOX will only work when the EAPOB (product) parameter is set to allow it on the product ID you are working with.

33 Maple Street

Cardholder's address line 1.
address2 No String

Maximum length -- 30 characters

#4B

Cardholder's address line 2
city No String

Letters and spaces. Maximum length -- 20 characters.

Salt Lake City

Cardholder's city
state No String Valid 2 character state abbreviation UT Cardholder's state
postalCode No String

12345 or 12345-1234 (US), K1A-1A1 (CA)

84121

Cardholder's postal code (zip code)
countryCode No Number

Three digit country code

840

Three digit ISO numeric UN M49 country code; example USA=840, Canada=124.
primaryPhone No Number

Valid phone number

8013656050

Cardholder's primary phone number
otherPhone No Number

Valid phone number

8013656050

Cardholder's other phone number
mobilePhone No Number

Valid phone number

8013656050

Cardholder's mobile phone number
mobileCarrierId Conditional Integer

Configurable list

8

Cardholder's mobile carrier--configurable list
email No String

Email Address

user@fakedomain.com

Cardholder's email.
webUid No String

Must be unique. Start with a letter. Only letters and numbers. Case insensitive.

a4j9KH3kkdh

Cardholder website username
webPwd No String

At least 8 characters and have an uppercase character, lower case character and a number.

eharley

Cardholder website password.
secretQuestion No String

Letters, spaces and '?'. Maximum length -- 50 characters.

What was the name of your first pet?

Secret Question
secretAnswer No String

Letters and spaces. Maximum length -- 50 characters.

Larry

Secret Answer
id No String

See section on Id Types.

123456789

Unique identifier for Cardholder, usually SSN (see Appendix Enumerations section on Customer Id Types).
idType Conditional Integer

See section on Id Types.

2

Which type is parameter id (see Appendix Enumerations section on Customer Id Types).
id2 No String

See section on Id Types. 123456789012|UT|

12/25/2020

Unique identifier for Cardholder, usually SSN (see Appendix Enumerations section on Customer Id Types).
idType2 Conditional Integer

See section on Id Types.

1

Which type is parameter "id2" (see Appendix Enumerations section on Customer Id Types).
shipToAddress1 No String

Maximum length -- 30 characters

33 business parkway

Ship to address line 1.
shipToAddress2 No String

Maximum length -- 30 characters

Suite 400

Ship to address line 2.
shipToCity No String

Maximum length -- 30 characters

Salt Lake City

Ship to city.
shipToState No String

Valid 2 character state or province abbreviation.

UT

Ship to state.
shipToPostalCode No String

Valid postal code

841213333

Ship to postal code (zip code).
shipToCountryCode No Number

Three digit country code

840

3 digit ISO numeric UN M49 country code; Example USA=840, Canada=124.
locale No String

Accepted values = "en_US", "es_US", "fr_CA", and "en_CA" .

en_US

Sets customer language preference. Default is "en_US"
mailBounced No String Accepted values = 'Y' (Yes) or 'N' (No) Flags customer account to show that a postal mailing has been returned to sender.
location No String

Must be a number if type is 0. Must be less than 15 if type is 1.

1

Unique location identifier. See location types.
locationType No Integer

0, 1, or 2

1

0=Galileo Location ID 1=Partner Location ID 2=Don't Validate
occupation No String

Up to 60 character alphanumeric including space, _, -, ., @, &, and comma.

Project Manager

Cardholder occupation
incomeSource No String

Up to 60 character alphanumeric including space, _, -, ., @, &, and comma.

Kroger Food & Drug

Cardholder employer name or income source

Status codes
Status Code description
0 Success
1 Missing parameters
2 Invalid parameter(s)
12 Invalid customer account
415-01 Account information could not be updated at this time. Please try again later.
415-02 Customer primary ID can not be modified when CIP is passed.
415-03 All elements except shipToAddress2 required for ship to address.
415-04 Your provider configuration does not allow the nullifying of email address.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>
   </new_account>
</response_data>
customer_profile A data structure that contains information about a customer. <customer_profile>
  <first_name>Jacob</first_name>
  x
</customer_profile>
address_1 Street address line 1. 42325 Cypress Crt
first_name A person's first name. Jackie
middle_name A person's middle name. Zelina
last_name A person's last name. Vela
city City for address information. Calgary
state State for address information. AB
postal_code A postal code for the address information. M5J2B6
country_code The ISO 3166 international standard for country codes. Used to identify a country as a part of a profile. 124
phone The main phone number on the account. 5464206369
phone A mobile phone number on the account. 5464206368
email The email address on a profile. nonone@nowhere.com
occupation The occupation of a person listed on a profile. Electrical Engineer
income_source How the person on a profile earns an income. Kroger Food and Drug
ship_to_address A data structure that contains address information for shipping. <ship_to_address>
  <address_1>123 Maple Drive>/address_a1>
  x
<ship_to_address>
express_mail Does the profile use express mail service? N
related_accounts A data structure that lists accounts related to a customer profile. <related_accounts>
  x
</related_accounts>
transaction_id A number that represents a transaction. 12345a
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
                                                                        
# The following shell script will use cURL to call updateAccount and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/updateAccount \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'firstName=Ed' \ -d 'lastName=Harley' \ -d 'address1=33 Maple Street' \ -d 'address2=#4B' \ -d 'city=Salt Lake City' \ -d 'state=UT' \ -d 'postalCode=84121'
        
// The following Java code will make a updateAccount call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("firstName", "Ed"); params.put("lastName", "Harley"); params.put("address1", "33 Maple Street"); params.put("address2", "#4B"); params.put("city", "Salt Lake City"); params.put("state", "UT"); params.put("postalCode", "84121"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/updateAccount"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a updateAccount call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'firstName': 'Ed', 'lastName': 'Harley', 'address1': '33 Maple Street', 'address2': '#4B', 'city': 'Salt Lake City', 'state': 'UT', 'postalCode': '84121'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/updateAccount', data=payload, headers={'response-content-type': 'json'}) print('updateAccount response code: ' + r.json()['status_code'])
        
// The following PHP code will make a updateAccount call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/updateAccount'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'firstName'=>'Ed', 'lastName'=>'Harley', 'address1'=>'33 Maple Street', 'address2'=>'#4B', 'city'=>'Salt Lake City', 'state'=>'UT', 'postalCode'=>'84121'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a updateAccount call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/updateAccount" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&firstName{5}&lastName{6}&address1{7}&address2{8}&city{9}&state{10}&postalCode{11}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "Ed", "Harley", "33 Maple Street", "#4B", "Salt Lake City", "UT", "84121"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a updateAccount call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/updateAccount") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "firstName" => "Ed", "lastName" => "Harley", "address1" => "33 Maple Street", "address2" => "#4B", "city" => "Salt Lake City", "state" => "UT", "postalCode" => "84121"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    modifyOnDemandAlertStatus() response example
                                            
                                            <?xml version="1.0" encoding="UTF-8"?>
                                            <response>
                                               <status_code>0</status_code>
                                               <status>Success</status>
                                               <system_timestamp>2011-02-15 10:21:32</system_timestamp>
                                               <response_data/>
                                               <processing_time>0.248</processing_time>
                                               <echo>
                                                 <transaction_id>12345a</transaction_id>
                                                 <provider_transaction_id>77bb</provider_transaction_id>
                                                 <provider_timestamp>2013-02-06 10:10:10</provider_timestamp>
                                               </echo>
                                            </response>
                                                            
Duplicate use of Customer ID
Parameters
Status codes
Response
// forcePassCip()
The forcePassCip() method allows for API consumer to move the customer account to a CIP passed state.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
recordOverride No Boolean

0 or 1

1

1 or unset = Record force pass in system; 0 = Record CIP passed but not overridden.

Status codes
Status Code description
0 Success
2 Invalid parameter(s)
535-01 Customer account already CIP force passed.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status_code The status of the response. 0
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
system_timestamp A system generated timestamp. 2011-10-07 10:25:07
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
  x
</response_data>
processing_time The time elapsed in processing the transaction. 0.973
echo A data structure that displays transaction id information. <echo>
  x
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call forcePassCip and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/forcePassCip \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228'
        
// The following Java code will make a forcePassCip call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/forcePassCip"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a forcePassCip call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/forcePassCip', data=payload, headers={'response-content-type': 'json'}) print('forcePassCip response code: ' + r.json()['status_code'])
        
// The following PHP code will make a forcePassCip call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/forcePassCip'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a forcePassCip call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/forcePassCip" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a forcePassCip call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/forcePassCip") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    forcePassCip() response example

<?xml version="1.0" encoding="UTF-8"?>
<response>
   <status_code>0</status_code>
   <status>Success</status>
   <system_timestamp>2012-06-28 15:32:17</system_timestamp>
   <response_data/>
   <processing_time>0.882</processing_time>
   <echo>
     <transaction_id>12345a</transaction_id>
     <provider_transaction_id>77bb</provider_transaction_id>
     <provider_timestamp>2013-02-06 10:10:10</provider_timestamp>
   </echo>
</response>
                
Parameters
Status codes
Response
// runCip()
This method allows the API consumer to run the CIP process on a customer that has already been enrolled.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String 50 characters or less AbC123-9999 Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String 15 characters or less 4sb62fh6w4h7w34g Web Service Password as provided and authenticated by Galileo for the requesting IP Address.  
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String 60 characters or less 9845dk-39fdk3fj3-4483483478 A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String PAN or PRN 074103447228 Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).

Status codes
Status Code description
0 Success
2 Invalid parameter(s)
30 Invalid enrollment transaction
31 Unknown or unregistered transaction
461-01 Invalid application
461-02 Product not configured to run CIP.
461-03 Product does not have any aggregators configured.
461-04 Could not find product.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status_code The status of the response. 0
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
system_timestamp A system generated timestamp. 2011-10-07 10:25:07
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
  x
</response_data>
cip_result_indicator A flag that indicates that a CIP result exists in the response. Y
cip_result A data structure that contains data fields around a CIP result. <cip>
  x
</cip>
aps Acts as a logical separator for status and model information. <aps>
  <status>
  <model_results>
</aps>
status The condition of a process or response (such as embossed card, account, freeze, and so on). Pass
model_results Acts as a logical separator between models. <model_results>
  <model>
</model_results>
model Acts as a logical separator. Relates to the template used to verify the identity of the card holder data sent to the createAccount end point. <model>
  <model_name>
  <model_version>
  <code>
</model>
model_name The details of the ID verification model, how it is scored, and what criteria are used for it. Relates to the template used to verify the identity of the card holder data sent to the createAccount end point. (This information is proprietary information shared between the CIP vendor and the issuing bank). BancorpPIDC
model_version Version number for the model used. 1
code In a model run, lists the pass number. Pass A
text Plain text description of the code value. SSN Matches Address
processing_time The time elapsed in processing the transaction. 0.973
echo A data structure that displays transaction id information. <echo>
  x
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call runCip and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/runCip \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228'
        
// The following Java code will make a runCip call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/runCip"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a runCip call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/runCip', data=payload, headers={'response-content-type': 'json'}) print('runCip response code: ' + r.json()['status_code'])
        
// The following PHP code will make a runCip call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/runCip'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a runCip call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/runCip" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a runCip call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/runCip") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    runCip() response example
                                            
                                            <?xml version="1.0"?>
                                            <response>
                                               <status_code>0</status_code>
                                               <status>Success</status>
                                               <system_timestamp>2017-06-15 10:03:03</system_timestamp>
                                               <response_data>
                                                 <cip_result_indicator>Y</cip_result_indicator>
                                                 <cip_result>
                                                   <aps>
                                                     <status>Pass</status>
                                                     <model_results>
                                                       <model>
                                                         <model_name>BancorpPIDC</model_name>
                                                         <model_version>1</model_version>
                                                         <code>Pass A</code>
                                                         <text>Pass A</text>
                                                       </model>
                                                     </model_results>
                                                     <date_time>2017-06-15 10:03:03</date_time>
                                                   </aps>
                                                 </cip_result>
                                               </response_data>
                                               <processing_time>4.195</processing_time>
                                               <echo>
                                                 <transaction_id>test</transaction_id>
                                                 <provider_transaction_id/>
                                                 <provider_timestamp/>
                                               </echo>
                                            </response>
                                                            
Parameters
Status codes
Response
// getAccountOverview()
The getAccountOverview() method response contains combined response data of several other methods. The intent of this method is to give a wide range of information that would be of use in situations such as a landing dashboard after customer login.
The following categories or data sets are available in the getAccountOverview() response:
  • General account information (balance, status, application date).
  • Cardholder profile data.
  • Posted transactions.
  • Pending card authorizations.
  • Pending fees (generally because of insufficient funds).
  • Savings interest data. This is only applicable if an associated savings account exists. If no savings account exists, a unary savings_interest element will be returned.
Note
Transactions created by createPayment() and createAdjustment() will not be visible for at least several seconds.
Parameters
The parameters below can be submitted with the method. Note that some parameters are required.
Parameters Required Data type Pattern Notes Example value
apiLogin Yes String 50 characters or less. Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address. AbC123-9999
apiTransKey Yes String 15 characters or less. 4sb62fh6w4h7w34g 4sb62fh6w4h7w34g
providerId Yes Integer 10 digits or less. Galileo issued unique Provider identifier. 9999

transactionId

Yes String 60 characters or less. Unique transaction identifier (generated by provider). There are rare circumstances where allowed characters are more limited. Refer to individual method definitions for any variances. 9845dk-39fdk3fj3-4483483478

accountNo

Yes String PAN or PRN. Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier). 074103447228

startDate

Yes Date YYYY-MM-DD The beginning date for the date range. 2016-01-01

endDate

Yes Date YYYY-MM-DD The end date for the date range; Must be greater than or equal to the startDate. 2016-02-01
Status codes
Codes that define the status of the transaction.
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
23 Bad date range
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status_code The status of the response. 0
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
  <new_account>
  </new_account>
</response_data>
pmt_ref_no A Galileo generated account number. 008103023340
application_date The date the account application was received. 2016-03-16
calculated_balance The balance on an account after a transaction is complete. 210.25
currency_code A three-character code to represent global currencies. USD
profile A data structure that contains information on a person. USD
first_name The first name on a profile. John
last_name The last name on a profile. Smith
middle_name The middle name on a profile. Fudd
city The city listed on a profile or address. Ember
country_code The ISO 3166 international standard for country codes. Used to identify a country as a part of a profile. 840
state The geographic state entity that is a part of the United States. AZ
postal_code The zip code listed as part of a profile. 57106
home_phone The home phone number on a profile. 8017212222
mobile_phone The mobile phone number of a person as listed in a profile. 8017245521
email The email address on a profile. noone@nowhere.com
ship_to_address A data structure that contains the ship to address as listed on a profile. <address_1>33 Maple Drive</address_1>
  <address_2>#44</address_2>
  <city>Ember</city>
  <state>AZ</state>
  <postal_code>57106</postal_code>
  <country_code/>
</ship_to_address>
address_1 Street and residence number on the account. 1234 North 678 East
address_2 Additional address information on the account. Suite 2
city City for address information. Calgary
state State for address information. AB
postal_code A postal code for the address information. M5J2B6
country_code The ISO 3166 international standard for country codes. Used to identify a country as a part of a profile. 124
express_mail Does the profile use express mail service? N
occupation The occupation of a person as listed in a profile. Project Manager
income_source How the person on a profile earns income. Kroger Food and Drug
transaction_count The number of transactions listed in the response. 3
authorization_count The number of authorizations listed in the response. 3
start_date Start date of the response. 2010-10-01 00:00:00
end_date The end date of a response. The end date must always be later than the start date, violations will trigger a bad date range response. 2010-11-01 23:59:59
transactions A data element to display meta information for one or more transactions. <transactions>
  <transaction>x</transaction>
</transactions>
transaction A data element to display the information associated with a transaction. <transaction>
  <pmt_ref_no>008103023340</pmt_ref_no>
  <act_id>44777870</act_id>
  <act_type>FE</act_type>
  <post_ts>2010-11-01 04:13:25</post_ts>
  <amt>-.5</amt>
  <details>IVR Fee</details>
  <description>Fee</description>
  <source_id>5227662</source_id>
  <bal_id>5757170</bal_id>
  <prod_id>207</prod_id>
  <auth_ts>2010-11-01 04:13:25</auth_ts>
  <trans_code>FE0401</trans_code>
  <ach_transaction_id/>
  <external_trans_id>483494-4443-455460</external_trans_id>
  <original_auth_id/>
  <local_amt/>
  <local_curr_code/>
  <settle_amt/>
  <settle_curr_code/>
  <billing_amt/>
  <billing_curr_code/>
</transaction>
act_id Id number assigned to an account. 44777870
post_ts The time stamp of a posted transaction. 2012-09-19 14:04:03
amt A fee or transaction charge. .5
details Information on a transaction or authorization. IVR Fee
description Definition of what a transaction was for. Fee
source_id A code unique to the source of the activity (such as fees, adjustments, and so on). 51010054
bal_id Integer-based account number, also known as balance ID. 5757170
prod_id Galileo generated product Id of the account. 207
auth_ts Time stamp of an authorization. 2010-11-01 04:13:25
trans_code The combination of act_type and otype. For instance, if act_type is an adjustment, act_type would be AD, otype could be MC and the value in transcode would be 'ADMC'. VIA
ach_transaction_id A unique ID for an ACH transaction. 22528
external_trans_id Non-Galileo id number for a transaction. 19681089
original_auth_id The id of the originating authorization. 374634555
local_amt Amount of the transaction based on local currency. Used when multiple currency codes are in use. 0874
local_curr_code Currency code in use locally. Used when multiple currency codes are in use. 840
settle_amt The amount of a single transaction that has been settled. Required if transaction and settlement currencies are different. Used when multiple currency codes are in use. 1524
settle_curr_code Currency code in use for the settle_amt. Used when multiple currency codes are in use. Required if transaction and settlement currencies are different. 840
billing_amt The billing amount of a transaction. Used when multiple currency codes are in use. 59
billing_curr_code Currency code in use for the billing_amt. Used when multiple currency codes are in use. 840
authorizations A data structure that contains meta data on authorizations listed in the response. <authorizations>
  <authorization>x</authorization>
</authorizations>
authorization A data structure that contains information on an authorization listed in the response. <authorization>
  <auth_id>37464470</auth_id>
  <details>GOOGLE *Zynga Inc</details>
  <details_formatted>ZYNGA INC, CA</details_formatted>
  <mcc>7399</mcc>
  <amount>-5.4</amount>
  <timestamp>2012-09-20 07:43:51</timestamp>
  <type>L</type>
  <merchant_id>38438338338339853</merchant_id>
  <acq_id>538559</acq_id>
  <terminal_id/>
  <can_be_expired>1</can_be_expired>
  <original_auth_id>0</original_auth_id>
  <network_code>V</network_code>
  <local_amt/>
  <local_curr_code/>
  <settle_amt/>
  <settle_curr_code/>
  <billing_amt/>
  <billing_curr_code/>
</authorization>
original_auth_id The id of the originating authorization. 374634555
details_formatted Information on a transaction or authorization formatted for human reading. GOOGLE *ZYNGA INC, GOOGLE.COM/CH, CA
mcc Merchant Category Code (MCC) assigned by a payment card organization to a merchant/payee. 7399
fee An ammount charged for a service. 0
timestamp The date and time a change was made. 2012-09-20 07:43:51
type The type of transaction. L
merchant_id A unique number assigned to a merchant location or terminal to identify that merchant with the association. 38438338338339853
acq_id Acquirer ID. 538599
terminal_id A unique number assigned to a specific point-of-origination terminal or workstation. 43553434
can_be_expired Allow an expiration on an authorization. 1
fees A data structure that contains meta data on fees listed in the response. <fees>
  <fee>x</fee>
</fees>
fee A data structure that contains information on a fee listed in the response. <fee>
  <fee_event_id>53266899</fee_event_id>
  <type>TMD</type>
  <type_description>0023</type_description>
  <amt>.5</amt>
  <fee_date>2012-09-19 14:04:03</fee_date>
  <card_id>2935310</card_id>
  <fee_description>Denied ATM Withdrawal Domestic</fee_description>
  <related_transaction>
  <details>1840 HOMEVILLE ROAD WEST MIFFLIN PAUS</details>
  <amt>102</amt>
  <post_ts>2012-09-19 14:04:03</post_ts>
  </related_transaction>
</fee>
fee_event_id Galileo generated fee transaction integer ID. 53266899
type The type of fee applied. TMD
type_description Fee description (see Activity Transition Types in documentation). 217
fee_date A timestamp for when the fee was charged. 2015-09-19 14:04:03
card_id Integer identifier of the card as found in the raw data file (RDF). Unique identifier for a PAN. 12345
fee_description The description on a fee. Denied ATM Withdrawal Domestic
related_transaction A data structure that contains information on transactions related to a fee <related_transaction>
  <details>x</details>
  <amt>x</amt>
  <post_ts>x</post_ts>
</related_transaction>
savings_interest A data structure that contains start_date, end_date, accrual_interest, interest_ytd, and apy information for an account. <savings_interest>
  <start_date>x</start_date>
</savings_interest>
accrual_interest Interest accrued on account. 15.25
interest_ytd The year to date interest paid on a savings account. 20.47
apy The amount earned with compound interest over the course of one year. 5.99
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>x</transaction_id>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call getAccountOverview and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/getAccountOverview \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228' \ -d 'startDate=2018-10-01' \ -d 'endDate=2018-11-01'
        
// The following Java code will make a getAccountOverview call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); params.put("startDate", "2018-10-01"); params.put("endDate", "2018-11-01"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/getAccountOverview"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a getAccountOverview call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228', 'startDate': '2018-10-01', 'endDate': '2018-11-01'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/getAccountOverview', data=payload, headers={'response-content-type': 'json'}) print('getAccountOverview response code: ' + r.json()['status_code'])
        
// The following PHP code will make a getAccountOverview call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/getAccountOverview'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228', 'startDate'=>'2018-10-01', 'endDate'=>'2018-11-01'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a getAccountOverview call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/getAccountOverview" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}&startDate{6}&endDate{7}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228", "2018-10-01", "2018-11-01"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a getAccountOverview call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/getAccountOverview") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228", "startDate" => "2018-10-01", "endDate" => "2018-11-01"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
Parameters
Status codes
Response
// verifyAccount()
Returns a record set containing the following:
Current account balance (both posted and authorized transactions are factored into the balance amount).
  • Current maximum amount that can be loaded to the account.
  • External account ID provided by the client.
  • Account Payment Reference Number (PRN).
  • Galileo Account Number
This method can include information for all cards related to the account or only those on the supplied card number/PRN.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
loadType No String

2 characters

RL

Payment types are configurable per client. Contact your account representative to determine which types you have implemented. If no loadType value is specified, the default loadType value RL will be used.
includeRelated No Boolean

0 or 1

0

Default is true; 0=false, 1=true
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
25 Invalid or unconfigured type
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
accounts Acts as a logical separator between accounts if more than one is returned. <accounts>
  <account>x</account>
</accounts>
account Acts as a logical separator to discern a specific account. <account>
  <prn>074129972795</prn>
  <prod_id>560</prod_id>
  <app_date>2011-02-04 04:27:55</app_date>
  <status>N</status>
  <active_flag>Y</active_flag>
</account>
max_load_amount The maximum amount that can be loaded on a credit card. 20000.01
balance The amount of money in a savings or checking account. 743.82
external_account_id An external account ID provided by the client. PWD 2492
pmt_ref_No A Galileo generated account number. 074117133905
account_status The condition of the account after a modification. Refer to 'Account Statuses' in the Enumerations section of this documentation for definitions of values. N
galileo_account_Number Galileo generated integer account number, also known as balance ID. 327003
product_id Galileo generated integer. 101
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call verifyAccount and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/verifyAccount \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228'
        
// The following Java code will make a verifyAccount call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/verifyAccount"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a verifyAccount call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/verifyAccount', data=payload, headers={'response-content-type': 'json'}) print('verifyAccount response code: ' + r.json()['status_code'])
        
// The following PHP code will make a verifyAccount call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/verifyAccount'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a verifyAccount call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/verifyAccount" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a verifyAccount call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/verifyAccount") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
Parameters
Status codes
Response
// modifyStatus()
Modifies the status of an account, card, or both.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique product Identifier used for internal Galileo processing and added security) or card_id (integer identifier of the card as found in RDF, getAccountCards(), and getCard()).
type Yes Integer

Predefined integer value range

2

Reflects the account and card's current status before modification. See the Account and card status table below.
savingsprodId Conditional N-A

N-A

N-A

Calls of type 1 Activate account, and type 11 Update account status to active, can send savingsProdId. savingsProdId defines what the savings account prodID will be. (If not passed, prodID will be the value set in the SAVPI product parameter).
Account and card status table
Type Description Changed (account or card) Card status Account status
1 Activate account Account -- N
2 Deactivate account Account -- C
3 Initiate card lost process. Card L --
4 Initiate card stolen process. Card S --
5 Update card status to Cancelled. Card C --
6 Initiate card activated process. Account & Card N N
7 Update card status to Active. Card N --
8 Update card status to Lost. Card L --
9 Update card status to Stolen. Card S --
10 Account disabled through IVR. Account -- D
11 Update account status to Active. Account -- N
12 Reissue card. N/A -- --
13 Deactivate account and cancel card(s). Account & Card C C
14 Freeze overdraft account. N/A -- --
15 Overdraft Unfreeze. N/A -- --
16 Account deactivated and card(s) cancelled through the Galileo API. Account & Card Z Z
17 Freeze card. Card -- --
18 Unfreeze card. Card -- --
19 Reissue with new PAN. Card -- --
20 Cancel without refund (status 'Z') all accounts and cards for a customer and all related accounts and cards. Account & Card Z Z
21 Update card status to waiting for payment. Card -- W
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
413-01 PAN is required as accountNo no in multi-card/account situations.
413-02 Invalid account -- account is in charged off status and cannot be modified.
413-03 Invalid account -- account is in fraud status and cannot be modified.
413-04 Unknown status type.
413-05 Card cannot be activated.
413-06 Card cannot be activated.
413-07 Reissue already found for this card.
413-08 Reissue restricted for this card.
413-09 Stock is the same or product cannot be reissued.
413-10 Account/Card already in requested status or cannot be changed to requested status.
413-11 Overdraft account unavailable or not in participating status.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
pmt_ref_No A Galileo generated account number. 008103023340
account_status The condition of the account after a modification. Refer to 'Account Statuses' in the Enumerations section of this documentation for definitions of values. Z
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call modifyStatus and # print the full XML response curl - v https;//sandbox-api.gpsrv.com/intserv/4.0/modifyStatus \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228' \ -d 'type=2'
        
// The following Java code will make a modifyStatus call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); params.put("type", "2"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https;//sandbox-api.gpsrv.com/intserv/4.0/modifyStatus"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a modifyStatus call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228', 'type': '2'} r = requests.post(url='https;//sandbox-api.gpsrv.com/intserv/4.0/modifyStatus', data=payload, headers={'response-content-type': 'json'}) print('modifyStatus response code: ' + r.json()['status_code'])
        
// The following PHP code will make a modifyStatus call // and echo the response status code. $endpoint = 'https;//sandbox-api.gpsrv.com/intserv/4.0/modifyStatus'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228', 'type'=>'2'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a modifyStatus call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https;//sandbox-api.gpsrv.com/intserv/4.0/modifyStatus" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}&type{6}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228", "2"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a modifyStatus call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https;//sandbox-api.gpsrv.com/intserv/4.0/modifyStatus") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228", "type" => "2"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
Parameters
Account and card status table
Status codes
Response
// getAccountCards()
The getAccountCards() method returns a recordset that includes the customer's profile information and all accounts and card that associated with that customer. Sensitive parameters can be partially returned or removed by configuration based on the API consumer's needs and PCI posture.
Parameters
The parameters below can be submitted with the method. Note that some parameters are required.
Parameter Required Data type Pattern Notes Example value
apiLogin Yes String 50 characters or less Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address. AbC123-9999
apiTransKey Yes   String   15 characters or less   Web Service Password as provided and authenticated by Galileo for the requesting IP Address.   4sb62fh6w4h7w34g  
providerId Yes   Integer   10 digits or less   Galileo issued unique Provider identifier.   9999  
transactionId Yes   String   60 characters or less   A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.   9845dk-39fdk3fj3-4483483478  
accountNo Yes   String   PAN or PRN   Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).   074103447228  
includeRelated No   Boolean   0 or 1   Default is true; 0=false, 1=true   0  
Status codes
Codes that define the status of the transaction.
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
customer A data structure that displays information on a customer. <customer>
  <first_name>John</first_name>
  <phone>8015554444</phone>
  <email>test@test.com</email>
  <ship_to_address>x</ship_to_address>
  <express_mail>N</express_mail>
nbsp; <related_accounts>
    <related_account>x</related_account>
    <related_account>x</related_account>
  </related_accounts>
  <occupation>Project Manager</occupation>
  <income_source>Project Manager</income_source>
</customer>
first_name Person first name. Jackie
middle_name A person's middle name on the account. Zelina
last_name Person last name. Vela
address_1 Street address line 1. 42325 Cypress Crt
address_2 Street address line 2. #33
city City for address information. Calgary
state The geographic state entity that is a part of the United States. NM
postal_code The zip code listed as part of a profile. 84402
country_code A country code based on the Iso3166-1 numeric standard. 124
phone The main phone number on account. 8017245521
mobile_phone The mobile phone number of a person as listed in a profile. 8017245521
email The email address on a profile. 3asdfaw3fadf@asdfasdf.com
ship_to_address A data structure that contains address information for shipping. <ship_to_address>
  <address_1>123 Maple</address_1>
  <address_2>Apt. B</address_2>
  <city>Ember</city>
  <state>AZ</state>
  <postal_code>18702</postal_code>
  <country_code/>
</ship_to_address>
express_mail Does the profile use express mail service? N
related_accounts A data structure that lists accounts related to a customer profile. <related_accounts>
<related_account>x </related_account>
</related_accounts>
related_account A data structure that displays account information. <related_account>
  <pmt_ref_no>074117133916</pmt_ref_no>
  <galileo_account_number>327003</galileo_account_number>
  <product_id>560</product_id>
  <active>Y</active>
  <status>N</status>
  <group_id>10</group_id>
  <application_date>2008-09-01</application_date>
  <start_date>2008-09-25</start_date>
  <bill_cycle_day>22</bill_cycle_day>
</related_account>
pmt_ref_no A Galileo generated account number. 008103023340
galileo_account_number Galileo generated integer account number, also known as balance ID. 1181464
product_id A unique product identifier. 525
active Indicates if an account is active or not. Y
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
group_id Integer value used for tracking the location (store, entity, etc...) where the customer was acquired. The group_id is set using the location and locationType parameters. 1
application_date The date an application was made to create an account. 2010-03-16
start_date Date the account was activated. 2010-10-01 00:00:00
bill_cycle_day Day of the month that the customer is billed (if monthly billing is applicable for the respective product). 22
occupation The occupation of a person as listed in a profile. Project Manager
income_source How the person on a profile earns income. Kroger Food and Drug
accounts Acts as a logical separator between accounts if more than one is returned. <accounts>
  <account>x</account>
</accounts>
account Acts as a logical separator to discern a specific account. <account>
  <prn>074129972795</prn>
  <prod_id>560</prod_id>
  <app_date>2011-02-04 04:27:55</app_date>
  <status>N</status>
  <active_flag>Y</active_flag>
</account>
cards A data structure that displays information for one or more cards. <cards>
  <card>x</card>
</cards>
card A data structure that displays information for a card. <cards>
  <card>  <expiry_date>2009-05-15</expiry_date>
  <card_status>N</card_status>
  <card_number>0000000000000000</card_number>
  <card_id>43354</card_id>
  <external_card_id/>
  <pin_fail_count>3</pin_fail_count>
  <pin_fail_date>2008-02-02 00:00:00</pin_fail_date>
    <spend_controls>  </spend_controls>
  </freeze_info>
  <embossed_cards>
  <embossed_card>
  </embossed_card>
  <embossed_card>
  </embossed_card>
  </embossed_cards>
</card>
amount An amount on a transaction. -5.4
auth_id Number assigned to an authorization. 37464470
card_id Unique identifier for a PAN. 12345
card_number A PAN or 16 digit card number. 123412XXXXXX1234
card_status Associated with the expiry_date, flag if a card has expired. N
embossed_cards An embossed card has imprinted or stamped payment card details that can be felt above the card's surface. Associated with an embossed status flag, created_date, emboss_date, expiry_date, and shipping_date. <embossed_cards>
 <embossed_card>x</embossed_card>
</embossed_cards>
embossed_card A data structure that displays the information associated with an embossed card. <embossed_card>
  <status>N</status>
  <created_date>2009-05-01</created_date>
  <emboss_date>2009-05-05</emboss_date>
  <expiry_date>2012-05-22</expiry_date>
  <shipping_type>standard</shipping_type>
</embossed_card>
end_date The end date of a response. 2010-11-01 23:59:59
expiry_date Expiration date of the card. 2009-05-22
external_card_id Alpha numeric partner specified external card identity. 1234567891234567891234567891234
freeze_info Associated with the Frozen status, and start and end date of a card. Frozen status=card locked out. Unfrozen status=card usable. (Freeze only affects authorization approvals). brackets here
pin_fail_count Counts the number of times a PIN entry fails. 3
pin_fail_date Date a PIN fail was recorded. 2009-05-22
timestamp The date and time a change was made. 2012-09-20 07:43:51
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call getAccountCards and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/getAccountCards \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'accountNo=074103447228' \ -d 'includesRelated=0'
        
// The following Java code will make a getAccountCards call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("accountNo", "074103447228"); params.put("includesRelated", "0"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/getAccountCards"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a getAccountCards call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'accountNo': '074103447228', 'includesRelated': '0'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/getAccountCards', data=payload, headers={'response-content-type': 'json'}) print('getAccountCards response code: ' + r.json()['status_code'])
        
// The following PHP code will make a getAccountCards call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/getAccountCards'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'accountNo'=>'074103447228', 'includesRelated'=>'0'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a getAccountCards call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/getAccountCards" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&accountNo{4}&includesRelated{5}", sEndPoint, " ", " ", "550", "074103447228", "0"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a getAccountCards call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/getAccountCards") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "accountNo" => "074103447228", "includesRelated" => "0"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
Parameters
Status codes
Response
// getAlerts()
This method returns a recordset of alerts available to a customer based on their program and whether those alerts are enabled or disabled for the various delivery channels.
This method can include information for all cards related to the account or only those on the supplied card number/PRN.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String 50 characters or less AbC123-9999 Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String 15 characters or less 4sb62fh6w4h7w34g Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String 60 characters or less 9845dk-39fdk3fj3-4483483478 A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String PAN or PRN 074103447228 Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
-1 Indicates that the application record failed to update or record.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
alerts In getAlerts(); a data structure that shows alerts settings. <alerts>
  <BADJ>
   <email_flag>0</email_flag>
   <pager_flag>0</pager_flag>
   </BADJ>
  <BAUT>
   <email_flag>0</email_flag>
   <pager_flag>0</pager_flag>
  </BAUT>
</alerts>
email_flag In getAlerts(), a field that shows if email alerts are set or not. 0
pager_flag A field that shows if pager alerts are set or not. 0
BAUT A data structure that shows if a BAUT alert has been sent. 0=alert not sent. 1=alert sent.
BAUT is an example of ID codes. For a complete list, see the Four character message SetAlerts ID codes in Enumerations.
<BAUT>
   <email_flag>0</email_flag>
   <pager_flag>0</pager_flag>
</BAUT>
BADJ A data structure that shows if a BADJ alert has been sent. 0=alert not sent. 1=alert sent.
BADJ is an example of ID codes. For a complete list, see the Four character message SetAlerts ID codes in Enumerations.
<BADJ>
   <email_flag>0</email_flag>
   <pager_flag>0</pager_flag>
</BADJ>
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call getAlerts and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/getAlerts \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'accountNo=074103447228'
        
// The following Java code will make a getAlerts call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("accountNo", "074103447228"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/getAlerts"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a getAlerts call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'accountNo': '074103447228'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/getAlerts', data=payload, headers={'response-content-type': 'json'}) print('getAlerts response code: ' + r.json()['status_code'])
        
// The following PHP code will make a getAlerts call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/getAlerts'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'accountNo'=>'074103447228'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a getAlerts call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/getAlerts" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&accountNo{4}", sEndPoint, " ", " ", "550", "074103447228"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a getAlerts call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/getAlerts") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "accountNo" => "074103447228"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    getAlerts() response example
                                                
                                                <?xml version="1.0" encoding="UTF-8"?>
                                                <response>
                                                   <status_code>0</status_code>
                                                   <status>Success</status>
                                                   <system_timestamp>2011-02-02 15:00:19</system_timestamp>
                                                   <response_data>
                                                     <alerts>
                                                       <BADJ>
                                                         <email_flag>0</email_flag>
                                                         <pager_flag>0</pager_flag>
                                                       </BADJ>
                                                       <BAUT>
                                                         <email_flag>0</email_flag>
                                                         <pager_flag>0</pager_flag>
                                                       </BAUT>
                                                     </alerts>
                                                   </response_data>
                                                   <processing_time>0.248</processing_time>
                                                   <echo>
                                                     <transaction_id>12345a</transaction_id>
                                                     <provider_transaction_id>77bb</provider_transaction_id>
                                                     <provider_timestamp>2013-02-06 10:10:10</provider_timestamp>
                                                   </echo>
                                                </response>
                                                                
Parameters
Status codes
Response
// getBalance()
getBalance() returns the balance of the account.
Parameters
Parameter Required Data type Pattern Notes Example value
apiLogin Yes String 50 characters or less Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address. AbC123-9999
apiTransKey Yes String 15 characters or less Web Service Password as provided and authenticated by Galileo for the requesting IP Address. 4sb62fh6w4h7w34g
providerId Yes Integer 10 digits or less Galileo issued unique Provider identifier. 9999
transactionId Yes String 60 characters or less A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction. 9845dk-39fdk3fj3-4483483478
accountNo Yes String PAN or PRN Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier). 074103447228
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account.
-1 Indicates that the application record failed to update or return.
Response
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call getTransHistory and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/getTransHistory \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228' \ -d 'startDate=2018-10-01' \ -d 'endDate=2018-11-01'
        
// The following Java code will make a getTransHistory call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); params.put("startDate", "2018-10-01"); params.put("endDate", "2018-11-01"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/getTransHistory"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a getTransHistory call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228', 'startDate': '2018-10-01', 'endDate': '2018-11-01'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/getTransHistory', data=payload, headers={'response-content-type': 'json'}) print('getTransHistory response code: ' + r.json()['status_code'])
        
// The following PHP code will make a getTransHistory call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/getTransHistory'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228', 'startDate'=>'2018-10-01', 'endDate'=>'2018-11-01'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a getTransHistory call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/getTransHistory" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}&startDate{6}&endDate{7}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228", "2018-10-01", "2018-11-01"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a getTransHistory call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/getTransHistory") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228", "startDate" => "2018-10-01", "endDate" => "2018-11-01"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
Parameters
Status codes
Response
// getOverdraftBalance()
Returns overdraft related information including available overdraft limit, payback amount, and actual balance if overdraft were combined.
Response element descriptions
Element Description
OverdraftAccountNo PRN of the overdraft account.
Available The available amount that can be requested on the overdraft account.
Payback The posted open to buy -- this is the amount used to date.
PaybackWithPendingFees The posted open to buy, including pending fees.
RawBalance The actual open to buy of the overdraft account.
ActualWithPrimary The actual balance of the primary account if overdraft was combined with it.
Limit The available limit on the overdraft account (the most the cardholder could use on their overdraft if nothing was owed).
RawLimit The limit that was set on the overdraft account (the actual limit available to the cardholder may be less if an initial fee was charged).
Frozen Flag indicating whether the overdraft account has been frozen or not (the value '1' indicating that it is frozen).
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
startDate Yes Date

YYYY-MM-DD

2016-01-01

The beginning date for the date range.
endDate Yes Date

YYYY-MM-DD

2016-02-01

The end date for the date range; must be greater than or equal to the startDate.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid Account
472-01 Cardholder is not opted in to overdraft.
472-02 Primary account not configured for overdraft.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
OverdraftAccountNo PRN of the overdraft account. 901101000031
Available Available overdraft limit. 0
PaybackWithPendingFees The posted open to buy, including pending fees. 0
RawBalance The actual open to buy of the overdraft account. 0
ActualWithPrimary The actual balance of the primary account if overdraft was combined with it. 202.73
Limit In getOverdraftBalance(), the available limit on the overdraft account (the most the cardholder could use on their overdraft if nothing was owed). 0
RawLimit The limit that was set on the overdraft account (the actual limit available to the cardholder may be less if an initial fee was charged). 0
Frozen In getOverdraftBalance(), a flag indicating whether the overdraft account has been frozen or not (the value '1' indicating that it is frozen). 0
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call getOverdraftBalance and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/getOverdraftBalance \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228' \ -d 'startDate=2018-10-01' \ -d 'endDate=2018-11-01'
        
// The following Java code will make a getOverdraftBalance call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); params.put("startDate", "2018-10-01"); params.put("endDate", "2018-11-01"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/getOverdraftBalance"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a getOverdraftBalance call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228', 'startDate': '2018-10-01', 'endDate': '2018-11-01'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/getOverdraftBalance', data=payload, headers={'response-content-type': 'json'}) print('getOverdraftBalance response code: ' + r.json()['status_code'])
        
// The following PHP code will make a getOverdraftBalance call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/getOverdraftBalance'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228', 'startDate'=>'2018-10-01', 'endDate'=>'2018-11-01'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a getOverdraftBalance call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/getOverdraftBalance" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}&startDate{6}&endDate{7}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228", "2018-10-01", "2018-11-01"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a getOverdraftBalance call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/getOverdraftBalance") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228", "startDate" => "2018-10-01", "endDate" => "2018-11-01"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
Response element descriptions
Parameters
Status codes
Response
// getSavingsInterest()
Returns accrual interest, interest YTD, and APY for a customer account that has savings enabled.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
startDate Yes Date

YYYY-MM-DD

2016-01-01

The beginning date for the date range.
endDate Yes Date

YYYY-MM-DD

2016-02-01

The end date for the date range; must be greater than or equal to the startDate.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid Account
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
start_date The start date of a response. 2018-01-01
end_date The end date of a response. 2018-02-01
accrual_interest Interest accrued on account. 15.25
interest_ytd The year to date interest paid on a savings account. 20.47
apy The actual interest rate used to calculate compound interest over the course of one year. 5.99
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call getSavingsInterest and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/getSavingsInterest \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228' \ -d 'startDate=2018-10-01' \ -d 'endDate=2018-11-01'
        
// The following Java code will make a getSavingsInterest call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); params.put("startDate", "2018-10-01"); params.put("endDate", "2018-11-01"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/getSavingsInterest"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a getSavingsInterest call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228', 'startDate': '2018-10-01', 'endDate': '2018-11-01'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/getSavingsInterest', data=payload, headers={'response-content-type': 'json'}) print('getSavingsInterest response code: ' + r.json()['status_code'])
        
// The following PHP code will make a getSavingsInterest call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/getSavingsInterest'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228', 'startDate'=>'2018-10-01', 'endDate'=>'2018-11-01'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a getSavingsInterest call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/getSavingsInterest" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}&startDate{6}&endDate{7}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228", "2018-10-01", "2018-11-01"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a getSavingsInterest call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/getSavingsInterest") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228", "startDate" => "2018-10-01", "endDate" => "2018-11-01"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
Parameters
Status codes
Response
// getIngoCustomerId()
getIngoCustomerId() provides the ability to retrieve customer ID information from third party provider Ingo Money. This customer ID is used as needed.
Parameters
Parameters Required Data type Pattern Description
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

Unique transaction identifier (generated by provider). There are rare circumstances where allowed characters are more limited. Refer to individual method definitions for any variances.
providerTransactionId No String

60 characters or less

47823438032233777

Secondary transaction identifier (generated by provider).
providerTimestamp No Date

19 characters Format: YYYY-MM-DD HH:MM:SS

2017-05-01 13:01:01

API consumers should use this parameter if they wish to store the related timestamp in their system for reporting and troubleshooting purposes.
mobileDeviceId Yes String

1 to 255 characters

123456789009876

A number assigned to a mobile device (used as identification). 
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
Status codes
Codes that define the status of the transaction.
Status Code description
0 Success
-1 Indicates that the application record failed to update or return.
562-01 Error authenticating with the INGO system. Contact Galileo Processing for support.
562-02 Error calling INGO API. Contact Galileo Processing for support.
562-03 Cardholder has no valid cards.
562-04 Error registering customer active card with INGO.
562-05 Invalid customer data.
562-06 INGO API access misconfiguration on server. Contact Galileo Processing for support.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
ingo_customer_id ID from the successful API interface to Ingo. xxxxxx
ingo_sso_token Single sign on token. xxxxxx
registered_card A data structure that displays information on a Ingo-provided card. <registered_card>
         <card_number>xxxxxxxxx</card_number>
         <card_id>xxxxxxxxx</card_id>
         <status>xxxxxxxxx</status>
      </registered_card>
card_number The number on a Ingo card with a portion of it masked. xxxxxx
card_id A code for card identification. xxxxxx
status A code that identifies the card¿s status. x
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call getIngoCustomerId and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/getIngoCustomerId \ -d 'apiLogin= ' \ -d 'providerId= ' \ -d 'transactionId= ' \ -d 'mobileDeviceId= ' \ -d 'accountNo= '
        
// The following Java code will make a getIngoCustomerId call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("providerId", " "); params.put("transactionId", " "); params.put("mobileDeviceId", " "); params.put("accountNo", " "); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/getIngoCustomerId"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a getIngoCustomerId call # and print the response status code. import requests payload = {'apiLogin': ' ', 'providerId': ' ', 'transactionId': ' ', 'mobileDeviceId': ' ', 'accountNo': ' '} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/getIngoCustomerId', data=payload, headers={'response-content-type': 'json'}) print('getIngoCustomerId response code: ' + r.json()['status_code'])
        
// The following PHP code will make a getIngoCustomerId call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/getIngoCustomerId'; $params = array('apiLogin'=>' ', 'providerId'=>' ', 'transactionId'=>' ', 'mobileDeviceId'=>' ', 'accountNo'=>' '); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a getIngoCustomerId call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/getIngoCustomerId" string sAPICall = string.Format("{0}?apiLogin{1}&providerId{2}&transactionId{3}&mobileDeviceId{4}&accountNo{5}", sEndPoint, " ", " ", " ", " ", " "); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a getIngoCustomerId call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/getIngoCustomerId") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "providerId" => " ", "transactionId" => " ", "mobileDeviceId" => " ", "accountNo" => " "}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
Parameters
Status codes
Response
// searchCustomer()
searchCustomer() performs a customer search by firstName, lastName, and postalCode.
Parameters
Note that at least one (or more) of the firstName, lastName, middleName, or dateOfBirth parameters are required.
Parameters Required Data type Pattern Notes Example value
apiLogin Yes String 50 characters or less Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address. AbC123-9999
apiTransKey Yes String 15 characters or less Web Service Password as provided and authenticated by Galileo for the requesting IP Address. 4sb62fh6w4h7w34g
providerId Yes Integer 10 digits or less Galileo issued unique Provider identifier. 9999
transactionId Yes String 60 characters or less A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction. 9845dk-39fdk3fj3-4483483478
firstName See note. String 30 characters; letters, spaces, numbers, and some punctuation: 
, . ? @ & ! # ' ~ * - ; +.
Cardholder's first name Ed
middleName See note. String Letters and spaces, maximum length of 30 characters. Cardholder's middle name W
lastName See note. String 30 characters; letters, spaces, numbers, and some punctuation: 
, . ? @ & ! # ' ~ * - ; +.
Cardholder's last name Harley
dateOfBirth See note. Date YYYY-MM-DD, minimum age per the business rules for the program. Cardholder's birth date 1980-01-01
postalCode Yes String 12345 or 12345-1234 (US), K1A-1A1 (CA) Cardholder's postal code (zip code) 84121
primaryPhone No Number Valid phone number Cardholder's primary phone number 8013656050
email No String Email Address Cardholder's email user@fakedomain.com
Status codes
Codes that define the status of the transaction.
Status Code description
0 Success
2 Invalid parameters
12 Invalid customer account
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
page The page number to be retrieved in the context of recordset paging. 1
total_record_count Number of records in the accounts list display. 1
number_of_pages Total number of pages in the accounts list display. 1
accounts Acts as a logical separator between accounts if more than one is returned. <accounts>
  <account>x</account>
</accounts>
account Acts as a logical separator to discern a specific account. <account>
  <pmt_ref_no>001117747228</pmt_ref_no>
  <first_name>Cls</first_name>
  <middle_name>Support</middle_name>
  <last_name>Testing</last_name>
  <email/>
  <status>N</status>
  <active>Y</active>
  <galileo_account_number>5014414</galileo_account_number>
  <product_id>94</product_id>
  <group_id>10</group_id>
  <application_date>2018-04-26 00:00:00</application_date>
</account>
pmt_ref_no A Galileo generated account number. 001117747228
first_name A person's first name as listed on the account. Dale
middle_name A person's middle name as listed on the account. Elizabeth
last_name A person's last name as listed on the account. Spencer
email The email address on a profile. someone@somewhere.org
status See Account Statuses in the documentation. N
active Yes or no to flag an active account. Y
galileo_account_number Galileo generated integer account number, also known as balance ID. 5014414
group_id Integer value used for tracking the location (store, entity, etc...) where the customer was acquired. The group_id is set using the location and locationType parameters. 10
application_date The date an application was made to create an account. 2018-04-26 00:00:00
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call getIngoCustomerId and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/getIngoCustomerId \ -d 'apiLogin= ' \ -d 'providerId= ' \ -d 'transactionId= ' \ -d 'mobileDeviceId= ' \ -d 'accountNo= '
        
// The following Java code will make a getIngoCustomerId call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("providerId", " "); params.put("transactionId", " "); params.put("mobileDeviceId", " "); params.put("accountNo", " "); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/getIngoCustomerId"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a getIngoCustomerId call # and print the response status code. import requests payload = {'apiLogin': ' ', 'providerId': ' ', 'transactionId': ' ', 'mobileDeviceId': ' ', 'accountNo': ' '} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/getIngoCustomerId', data=payload, headers={'response-content-type': 'json'}) print('getIngoCustomerId response code: ' + r.json()['status_code'])
        
// The following PHP code will make a getIngoCustomerId call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/getIngoCustomerId'; $params = array('apiLogin'=>' ', 'providerId'=>' ', 'transactionId'=>' ', 'mobileDeviceId'=>' ', 'accountNo'=>' '); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a getIngoCustomerId call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/getIngoCustomerId" string sAPICall = string.Format("{0}?apiLogin{1}&providerId{2}&transactionId{3}&mobileDeviceId{4}&accountNo{5}", sEndPoint, " ", " ", " ", " ", " "); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a getIngoCustomerId call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/getIngoCustomerId") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "providerId" => " ", "transactionId" => " ", "mobileDeviceId" => " ", "accountNo" => " "}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
Parameters
Status codes
Response
// getFeeHistory()
Returns fee history for a customer account by date range.
Recordset paging
Large data sets can be retrieved using recordset paging. A maximum date range of three years (1095 days) is allowed. When retrieving a large data set, pass the number of records desired (500 per page maximum) as the 'recordCnt' parameter value. Each response will include the total number of records found related to the date range as 'total_record_count'. The number of pages available will be returned as 'number_of_pages'. The current page being returned is communicated simply as 'page'. The API consumer can request the different pages of the recordset by passing the desired page number as the 'page' parameter.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
startDate Yes Date

YYYY-MM-DD

2016-01-01

The beginning date for the date range.
endDate Yes Date

YYYY-MM-DD

2016-02-01

The end date for the date range; must be greater than or equal to the startDate.
recordCnt No Integer

Positive integer value in the range of 1 and 99999.

100

The maximum number of records to be returned in the method response.
page No Number

Integer value of 1 or greater.

3

The page number to be retrieved in the context of recordset paging.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid Account
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status_code The status of the response. 0
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
  <new_account>x</new_account>
</response_data>
transaction_count The number of transactions listed in the response. 3
page The page number to be retrieved in the context of recordset paging. 1
total_record_count Number of records in the accounts list display. 2
number_of_pages Total number of pages in the accounts list display. 1
start_date Start date of the response. 2010-10-01 00:00:00
end_date The end date of a response. The end date must always be later than the start date, violations will trigger a bad date range response. 2010-11-01 23:59:59
sums A data structure that contains unsettled, settled, adjustment, fee, and payment information. <sums>
  <unsettled>x</unsettled>
  <settled>x</settled>
  <adjustment>x</adjustment>
  <fee>x</fee>
  <payment>x</payment>
</sums>
unsettled The total sum of transactions that have not been settled yet. -16.99
settled The ammunt of a singled transaction that has been settled. 0
adjustment The amount a sums total has changed. 0
fee An ammount charged for a service. 0
transactions A data element to display meta information for one or more transactions. <transactions>
  <transaction>x</transaction>
</transactions>
transaction A data element to display the information associated with a transaction. <transaction>
  x
</transaction>
is_savings Flags the transaction as being made to a savings account or not. 1
deny_code A code associated with a reason that a transaction is denied. 51 (2 or 3 alphanumeric)
disputable Flag to allow a disputation on a deny. 0
details Information on a transaction or authorization. IVR Fee
act_type Activity type of the transaction. AD
act_type_description Human readable description of an activity type. Visa Authorization
post_ts The time stamp of a posted transaction. 2012-09-19 14:04:03
amt A fee or transaction charge. .5
source_id A code unique to the source of the activity (such as fees, adjustments, and so on). 51010054
type A classification of the activity sub-type. PM
type_description The meaning of the type code. Visa Authorization
trans_code The combination of act_type and otype. For instance, if act_type is an adjustment, act_type would be AD, otype could be MC and the value in transcode would be 'ADMC'. VIA
arn Id for a trans used with some association networks. Long random string
merchant_id A unique number assigned to a merchant location or terminal to identify that merchant with the association. 38438338338339853
external_trans_id Non-Galileo id number for a transaction. 19681089
calculated_balance The balance on an account after a transaction is complete. 210.25
ach_transaction_id A unique ID for an ACH transaction. 22528
auth_ts Time stamp of an authorization. 2010-11-01 04:13:25
prior_id Represents the original auth_id and indicates that the current item is a reversal. Integer type value. 5094
card_id Integer identifier of the card as found in the raw data file (RDF). Unique identifier for a PAN. 12345
formatted_merchant_desc A parsed authorization merchant description. REDBOX *DVD RENTAL, 866-733-2693, IL
network_code A code that identifies the card issuer. V=Visa M=MC D=MC Debit v
pmt_ref_no A Galileo generated account number. 008103023340
mcc_code The merchant category code associated with the transaction. 4331
local_amt Amount of the transaction based on local currency. Used when multiple currency codes are in use. 0874
local_curr_code Currency code in use locally. Used when multiple currency codes are in use. 840
settle_amt The amount of a single transaction that has been settled. Required if transaction and settlement currencies are different. Used when multiple currency codes are in use. 1524
settle_curr_code Currency code in use for the settle_amt. Used when multiple currency codes are in use. Required if transaction and settlement currencies are different. 840
billing_amt The billing amount of a transaction. Used when multiple currency codes are in use. 59
billing_curr_code Currency code in use for the billing_amt. Used when multiple currency codes are in use. 840
pmt_ref_no A Galileo generated account number. 008103023340
act_id Id number assigned to an account. 44777870
act_type Activity type of the transaction. (See Activity Types in the documentation). FE
post_ts The time stamp of a posted transaction. 2012-09-19 14:04:03
amt A fee or transaction charge. .5
details Information on a transaction or authorization. Adjustment
description Definition of what a transaction was for. Fee
source_id A code unique to the source of the activity (such as fees, adjustments, and so on). 5227662
bal_id Integer-based account number, also known as balance ID. 5757170
prod_id Galileo generated product Id of the account. 207
trans_code The combination of act_type and otype. For instance, if act_type is an adjustment, act_type would be AD, otype could be MC and the value in transcode would be ADMC. FE0401
merchant_id A unique number assigned to a merchant account to identify it throughout the course of processing activities. 38438338338339853
terminal_id A unique number assigned to a specific point-of-origination terminal or workstation. 43553434
external_trans_id Non-Galileo id number for a transaction. 483494-4443-455454
original_auth_id The id of the originating authorization. 374634555
processing_time The time elapsed in processing the transaction. 1.723
transaction_id A number that represents a transaction. 99367542
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call getFeeHistory and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/getFeeHistory \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228' \ -d 'startDate=2018-10-01' \ -d 'endDate=2018-11-01'
        
// The following Java code will make a getFeeHistory call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); params.put("startDate", "2018-10-01"); params.put("endDate", "2018-11-01"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/getFeeHistory"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a getFeeHistory call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228', 'startDate': '2018-10-01', 'endDate': '2018-11-01'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/getFeeHistory', data=payload, headers={'response-content-type': 'json'}) print('getFeeHistory response code: ' + r.json()['status_code'])
        
// The following PHP code will make a getFeeHistory call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/getFeeHistory'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228', 'startDate'=>'2018-10-01', 'endDate'=>'2018-11-01'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a getFeeHistory call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/getFeeHistory" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}&startDate{6}&endDate{7}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228", "2018-10-01", "2018-11-01"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a getFeeHistory call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/getFeeHistory") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228", "startDate" => "2018-10-01", "endDate" => "2018-11-01"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
Parameters
Status codes
Response
// getPendingFees()
This method will return a record set of fee events that have not yet been successfully processed against the respective customer's account. Normally, fees are processed when they are created. In circumstances like insufficient balance the fee would pend and wait for sufficient balance. This data is also available in a response section of the getAccountOverview() method call. The method response for each individual pending fee will conditionally include related transaction information. This method currently only returns card authorization related transaction information. This information can be found in the 'related_transaction' data element.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo No String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
fees A data structure that contains information on one or more fees. <fees>
  <fee>
  </fee>
</fees>
fee A data structure that contains information on a fee. <fee>
  <pmt_ref_no>074130918639</pmt_ref_no>
  <fee_id>22897859</fee_id>
  <fee_date>2012-09-20 00:53:19</fee_date>
  <amt>4.07</amt>
  <status>P</status>
  <status_description>Processed</status_description>
  <type>MON</type>
  <type_description>0203</type_description>
</fee>
fee_event_id Galileo generated fee transaction integer ID. 53266899
type In getPendingFees(), the type of fee. TMD
type_description A description of the type code. 0023
amt A fee or transaction charge. .5
fee_date A timestamp for the time the fee was charged. 2018-09-19 14:04:03
card_id Integer identifier of the card as found in the raw data file (RDF). Unique identifier for a PAN. 2935310
fee_description The description on a fee. Denied ATM Withdrawal Domestic
related_transaction A data structure that contains information on transactions related to a fee. <related_transaction>
&bbsp; Various data items
</related_transaction>
details Information on a transaction or authorization. 1840 HOMEVILLE ROAD WEST MIFFLIN PAUS
post_ts The time stamp of a posted transaction. 2018-09-19 14:04:03
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call getPendingFees and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/getPendingFees \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228'
        
// The following Java code will make a getPendingFees call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/getPendingFees"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a getPendingFees call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/getPendingFees', data=payload, headers={'response-content-type': 'json'}) print('getPendingFees response code: ' + r.json()['status_code'])
        
// The following PHP code will make a getPendingFees call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/getPendingFees'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a getPendingFees call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/getPendingFees" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a getPendingFees call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/getPendingFees") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
Parameters
Status codes
Response
// getUserDefinedAccountFields()
This method enables the API consumer to retrieve a dataset of user defined fields that have been created and related to a given customer account.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String 50 characters or less AbC123-9999 Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String 15 characters or less 4sb62fh6w4h7w34g Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String 60 characters or less 9845dk-39fdk3fj3-4483483478 A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String PAN or PRN 074103447228 Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
fieldid Yes String Alphanumeric string up to 15 characters in length. MYACCTid Field identity or key name
fieldValue Yes String String value 1-175 characters in length. 48547537447-ABCD Field value
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
518-01 user defined field already exists; field updated.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
field_id In setUserDefinedAccountField(), a field identity or key name. PITid
field_value A value placed into the created field. 38437ddhk-3837-bddaaa9
last_modified A time and date stamp that shows the last time the custom field was modified. 2015-09-08 16:59:16.0
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call getUserDefinedAccountFields and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/getUserDefinedAccountFields \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228'
        
// The following Java code will make a getUserDefinedAccountFields call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/getUserDefinedAccountFields"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a getUserDefinedAccountFields call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/getUserDefinedAccountFields', data=payload, headers={'response-content-type': 'json'}) print('getUserDefinedAccountFields response code: ' + r.json()['status_code'])
        
// The following PHP code will make a getUserDefinedAccountFields call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/getUserDefinedAccountFields'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a getUserDefinedAccountFields call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/getUserDefinedAccountFields" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a getUserDefinedAccountFields call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/getUserDefinedAccountFields") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
Parameters
Status codes
Response
// setUserDefinedAccountField()
With this method the API consumer can add/update custom fields or data elements and relate them to a customer's account. The custom field identity is set with the 'fieldId' parameter. The custom field value is set with the 'fieldValue' parameter.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String 50 characters or less AbC123-9999 Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String 15 characters or less 4sb62fh6w4h7w34g Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String 60 characters or less 9845dk-39fdk3fj3-4483483478 A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String PAN or PRN 074103447228 Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
fieldid Yes String Alphanumeric string up to 15 characters in length. MYACCTid Field identity or key name
fieldValue Yes String String value 1-175 characters in length. 48547537447-ABCD Field value
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
518-01 user defined field already exists; field updated.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
field_id In setUserDefinedAccountField(), a field identity or key name. PITid
field_value A value placed into the created field. 38437ddhk-3837-bddaaa9
last_modified A time and date stamp that shows the last time the custom field was modified. 2015-09-08 16:59:16.0
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call setUserDefinedAccountField and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/setUserDefinedAccountField \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228' \ -d 'fieldId=MYACCTID' \ -d 'fieldValue=48547537447-ABCD'
        
// The following Java code will make a setUserDefinedAccountField call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); params.put("fieldId", "MYACCTID"); params.put("fieldValue", "48547537447-ABCD"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/setUserDefinedAccountField"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a setUserDefinedAccountField call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228', 'fieldId': 'MYACCTID', 'fieldValue': '48547537447-ABCD'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/setUserDefinedAccountField', data=payload, headers={'response-content-type': 'json'}) print('setUserDefinedAccountField response code: ' + r.json()['status_code'])
        
// The following PHP code will make a setUserDefinedAccountField call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/setUserDefinedAccountField'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228', 'fieldId'=>'MYACCTID', 'fieldValue'=>'48547537447-ABCD'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a setUserDefinedAccountField call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/setUserDefinedAccountField" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}&fieldId{6}&fieldValue{7}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228", "MYACCTID", "48547537447-ABCD"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a setUserDefinedAccountField call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/setUserDefinedAccountField") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228", "fieldId" => "MYACCTID", "fieldValue" => "48547537447-ABCD"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
Parameters
Status codes
Response
// addCustomerNote()
This method allows for the creation of a customer note that will be accessible in the Galileo CST.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String 50 characters or less AbC123-9999 Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String 15 characters or less 4sb62fh6w4h7w34g Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String 60 characters or less 9845dk-39fdk3fj3-4483483478 A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String PAN or PRN 074103447228 Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
note Yes String Alphanumeric string including punctuation Sample note message here. Text of the note.
sticky Yes Boolean 0 or 1 1 If a value of '1' is passed, the note will be set as 'sticky' or 'permanent' in the CST.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
note_id An ID number that identifies a customer note. 1445822
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call addCustomerNote and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/addCustomerNote \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228' \ -d 'note==Sample note message here.' \ -d 'sticky=1'
        
// The following Java code will make a addCustomerNote call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); params.put("note", "=Sample note message here."); params.put("sticky", "1"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/addCustomerNote"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a addCustomerNote call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228', 'note': '=Sample note message here.', 'sticky': '1'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/addCustomerNote', data=payload, headers={'response-content-type': 'json'}) print('addCustomerNote response code: ' + r.json()['status_code'])
        
// The following PHP code will make a addCustomerNote call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/addCustomerNote'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228', 'note'=>'=Sample note message here.', 'sticky'=>'1'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a addCustomerNote call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/addCustomerNote" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}&note{6}&sticky{7}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228", "=Sample note message here.", "1"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a addCustomerNote call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/addCustomerNote") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228", "note" => "=Sample note message here.", "sticky" => "1"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
Parameters
Status codes
Response
// getCustomerNoteHistory()
This method allows for the retrieval of note history for a customer as accessible in the Galileo CST. This method requires a date range; the date range has a maximum range size of 365 days.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String 50 characters or less AbC123-9999 Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String 15 characters or less 4sb62fh6w4h7w34g Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String 60 characters or less 9845dk-39fdk3fj3-4483483478 A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String PAN or PRN 074103447228 Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
startDate Yes Date YYYY-MM-DD 2016-01-01 The beginning date for the date range.
endDate Yes Date YYYY-MM-DD 2016-02-01 The end date for the date range; must be greater than or equal to the startDate.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
513-01 No note records found for this customer and date range.
-1 Indicates that the application record failed to update or return.
Response
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call getCustomerNoteHistory and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/getCustomerNoteHistory \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228' \ -d 'startDate=2018-10-01' \ -d 'endDate=2018-11-01'
        
// The following Java code will make a getCustomerNoteHistory call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); params.put("startDate", "2018-10-01"); params.put("endDate", "2018-11-01"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/getCustomerNoteHistory"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a getCustomerNoteHistory call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228', 'startDate': '2018-10-01', 'endDate': '2018-11-01'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/getCustomerNoteHistory', data=payload, headers={'response-content-type': 'json'}) print('getCustomerNoteHistory response code: ' + r.json()['status_code'])
        
// The following PHP code will make a getCustomerNoteHistory call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/getCustomerNoteHistory'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228', 'startDate'=>'2018-10-01', 'endDate'=>'2018-11-01'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a getCustomerNoteHistory call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/getCustomerNoteHistory" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}&startDate{6}&endDate{7}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228", "2018-10-01", "2018-11-01"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a getCustomerNoteHistory call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/getCustomerNoteHistory") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228", "startDate" => "2018-10-01", "endDate" => "2018-11-01"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
Parameters
Status codes
Response
// setAccountFeature()
The setAccountFeature() method is used to make miscellaneous customer account changes. Currently this method allows for the enabling or disabling of bill payment reporting and paper statement delivery to the customer. The method also allows for product ID switching. The featureType and featureValue parameters define what action is taken by the method.
The following special characters are available in names:
  • Space
  • - (hyphen)
  • . (period)
  • ' (apostrophe)
  • , (comma)
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String 50 characters or less AbC123-9999 Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String 15 characters or less 4sb62fh6w4h7w34g Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String 60 characters or less 9845dk-39fdk3fj3-4483483478 A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String PAN or PRN 074103447228 Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
featureType Yes Integer Positive integer value 3
  • 1=Bill payment reporting
  • 2=Paper statements
  • 3=Change product ID
  • 5=Express shipping
  • 6=Allow card not present transactions
  • 7=ACH early access
  • 8=Allow international transactions
  • 9=Disable ATM withdrawals
  • 10=Disable cash advance withdrawals
  • 11=Enable or disable savings round up
  • 13=Mark customer as High Risk
  • 14=Disable Galileo Dynamic Fraud Rules
  • 15=Overdraft Credit Limit
  • 16=Custom Card ID and must include |A at end of ID
  • 17=Overdraft opt in or out
featureValue Yes String Conditional by feature type 1000
  • 1=Y or N
  • 2 =Y or N
  • 3=Product ID number (integer)
  • 5=Y (enabled) or N (disabled)
  • 6= Y or N
  • 7= Y or N
  • 8=Y or N
  • 9=Y or N
  • 10=Y or N
  • 11=Y or N
  • 13=Y or N
  • 14=Y or N
  • 15=decimal number no commas or dollar sign
  • 16=a9ykshiu|A (this is an example only)
  • 17=E=Eligible, O=Opt in, I=Ineligible, P=Overdraft account created
startDate No Date YYYY-MM-DD 2016-01-01 The beginning date for the date range.
endDate No Date YYYY-MM-DD 2016-02-01 The end date for the date range; Must be greater than or equal to the startDate.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
426-01 Invalid feature type
426-02 Feature not allowed for account product.
426-03 Feature value does not match the configured format for the feature type.
426-04 Product cannot be switched to the same product.
426-05 Product cannot be switched to an unauthorized product.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
customer_profile A data structure that contains information about a customer. <customer_profile>
  <first_name>Chris'topher</first_name>
  <middle_name>Zelina</middle_name>
  <last_name>Vela</last_name>
  <address_1>42325 Cypress Crt</address_1>
  <address_2>Apt. 69</address_2>
  <city>Sandy</city>
  <state>NE</state>
  <postal_code>68753</postal_code>
  <country_code>840</country_code>
  <phone>5464206369</phone>
  <mobile_phone>3607026015</mobile_phone>
  <email>jvela1@randomizer.com</email>
  <ship_to_address>
  <address_1>123 Maple Drive</address_1>
  <address_2>#33</address_2>
  <city>Calgary</city>
  <state>AB</state>
  <postal_code>M5J2B6</postal_code>
  <country_code>124</country_code>
  </ship_to_address>
  <express_mail/>
  <related_accounts/>
</customer_profile>
first_name A person's first name as listed on the account. Chris'topher
middle_name A person's middle name as listed on the account. Zelina
last_name A person's last name as listed on the account. Vela
address_1 Street and residence number on the account. 42325 Cypress Crt
address_2 Additional address information on the account. Apt. 12
city City for address information. Sandy
state State for address information. NE
postal_code A postal code for the address information. 68753
country_code The ISO 3166 international standard for country codes. Used to identify a country as a part of a profile. 840
phone The main phone number on the account. 5464206369
mobile_phone The mobile phone number of a person as listed in a profile. 3607026015
email The email address on a profile. jvela1@randomizer.com
ship_to_address A data structure that displays an address used for shipping. <ship_to_address>
  <address_1>123 Maple Drive</address_1>
  <address_2>#33</address_2>
  <city>Calgary</city>
  <state>AB</state>
  <postal_code>M5J2B6</postal_code>
  <country_code>124</country_code>
</ship_to_address>
express_mail Does the profile use express mail service? N
related_accounts A data element that lists accounts related to a customer profile. <related_accounts>
x
</ related_accounts>
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call setAccountFeature and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/setAccountFeature \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'accountNo=074103447228' \ -d 'featureType=3' \ -d 'featureValue=1000'
        
// The following Java code will make a setAccountFeature call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("accountNo", "074103447228"); params.put("featureType", "3"); params.put("featureValue", "1000"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/setAccountFeature"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a setAccountFeature call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'accountNo': '074103447228', 'featureType': '3', 'featureValue': '1000'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/setAccountFeature', data=payload, headers={'response-content-type': 'json'}) print('setAccountFeature response code: ' + r.json()['status_code'])
        
// The following PHP code will make a setAccountFeature call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/setAccountFeature'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'accountNo'=>'074103447228', 'featureType'=>'3', 'featureValue'=>'1000'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a setAccountFeature call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/setAccountFeature" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&accountNo{4}&featureType{5}&featureValue{6}", sEndPoint, " ", " ", "550", "074103447228", "3", "1000"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a setAccountFeature call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/setAccountFeature") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "accountNo" => "074103447228", "featureType" => "3", "featureValue" => "1000"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    setAccountFeature() response example
                                                
                                                <?xml version="1.0" encoding="UTF-8"?>
                                                <response>
                                                   <status_code>0</status_code>
                                                   <status>Success</status>
                                                   <system_timestamp>2011-02-09 14:32:43</system_timestamp>
                                                   <response_data>
                                                     <customer_profile>
                                                       <first_name>Chris'topher</first_name>
                                                       <middle_name>Zelina</middle_name>
                                                       <last_name>Vela</last_name>
                                                       <address_1>42325 Cypress Crt</address_1>
                                                       <address_2>Apt. 69</address_2>
                                                       <city>Sandy</city>
                                                       <state>NE</state>
                                                       <postal_code>68753</postal_code>
                                                       <country_code>840</country_code>
                                                       <phone>5464206369</phone>
                                                       <mobile_phone>3607026015</mobile_phone>
                                                       <email>jvela1@randomizer.com</email>
                                                       <ship_to_address>
                                                         <address_1>123 Maple Drive</address_1>
                                                         <address_2>#33</address_2>
                                                         <city>Calgary</city>
                                                         <state>AB</state>
                                                         <postal_code>M5J2B6</postal_code>
                                                         <country_code>124</country_code>
                                                       </ship_to_address>
                                                       <express_mail/>
                                                       <related_accounts/>
                                                     </customer_profile>
                                                   </response_data>
                                                   <processing_time>0.274</processing_time>
                                                   <echo>
                                                     <transaction_id>12345a</transaction_id>
                                                     <provider_transaction_id>77bb</provider_transaction_id>
                                                     <provider_timestamp>2013-02-06 10:10:10</provider_timestamp>
                                                   </echo>
                                                </response>
                                                                
Parameters
Status codes
Response
// getAccountFeatures()
Returns a record set containing the following:
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String 50 characters or less AbC123-9999 Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String 15 characters or less 4sb62fh6w4h7w34g Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String 60 characters or less 9845dk-39fdk3fj3-4483483478 A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String PAN or PRN 074103447228 Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>x</new_account>
</response_data>
features A data structure that contains information about one or more features. <features>
  <feature>
   <type>3</type>
   <name>Product ID</name>
   <value>560</value>
  </feature>
</features>
feature A data structure that contains information about a feature. <feature>
  <type>3</type>
  <name>Product ID</name>
  <value>560</value>
</feature>
type The type of feature. 3
name In a feature element, identifies the type of feature. Product id
value A numeric value from the feature name. 560
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call getAccountFeatures and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/getAccountFeatures \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'accountNo=074103447228'
        
// The following Java code will make a getAccountFeatures call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("accountNo", "074103447228"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/getAccountFeatures"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a getAccountFeatures call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'accountNo': '074103447228'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/getAccountFeatures', data=payload, headers={'response-content-type': 'json'}) print('getAccountFeatures response code: ' + r.json()['status_code'])
        
// The following PHP code will make a getAccountFeatures call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/getAccountFeatures'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'accountNo'=>'074103447228'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a getAccountFeatures call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/getAccountFeatures" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&accountNo{4}", sEndPoint, " ", " ", "550", "074103447228"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a getAccountFeatures call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/getAccountFeatures") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "accountNo" => "074103447228"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    getAccountFeatures() response example
                                                
                                                <?xml version="1.0" encoding="UTF-8"?>
                                                <response>
                                                   <status_code>0</status_code>
                                                   <status>Success</status>
                                                   <system_timestamp>2017-08-18 15:41:57</system_timestamp>
                                                   <response_data>
                                                     <features>
                                                       <feature>
                                                         <type>3</type>
                                                         <name>Product ID</name>
                                                         <value>560</value>
                                                       </feature>
                                                       <feature>
                                                         <type>5</type>
                                                         <name>Express mail</name>
                                                         <value>N</value>
                                                       </feature>
                                                       <feature>
                                                         <type>6</type>
                                                         <name>Allow card not present transactions</name>
                                                         <value>Y</value>
                                                       </feature>
                                                       <feature>
                                                         <type>7</type>
                                                         <name>ACH early access</name>
                                                         <value>Y</value>
                                                       </feature>
                                                     </features>
                                                   </response_data>
                                                   <processing_time>0.391</processing_time>
                                                   <echo>
                                                     <transaction_id>550645969</transaction_id>
                                                     <provider_transaction_id>GAAP test</provider_transaction_id>
                                                     <provider_timestamp>2017-08-18 14:45:07</provider_timestamp>
                                                   </echo>
                                                </response>
                                                                
Parameters
Status codes
Response
// getAlertsBlackout()
This method returns customer defined preferences for when messaging should not be delivered.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
  <new_account>   </new_account>
</response_data>
beginTime Displays the beginning time (in 24 hour format) for an alert blackout. 04:00
endTime Displays the time (in 24 hour format) for an alert blackout to end. 09:00
timeZone Displays the time zone to calculate blackout between; -3=Hawaii, -2=Alaska, -1=Pacific, 0=Mountain, 1=Central, 2=Easter, 3=Atlantic 0
daylightSavings Displays if daylight savings time is observed on the alerts blackout. N
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call getAlertsBlackout and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/getAlertsBlackout \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228'
        
// The following Java code will make a getAlertsBlackout call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/getAlertsBlackout"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a getAlertsBlackout call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/getAlertsBlackout', data=payload, headers={'response-content-type': 'json'}) print('getAlertsBlackout response code: ' + r.json()['status_code'])
        
// The following PHP code will make a getAlertsBlackout call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/getAlertsBlackout'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a getAlertsBlackout call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/getAlertsBlackout" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a getAlertsBlackout call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/getAlertsBlackout") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    getAlertsBlackout() response example
                                                
                                                <?xml version="1.0" encoding="UTF-8"?>
                                                <response>
                                                   <status_code>0</status_code>
                                                   <status>Success</status>
                                                   <system_timestamp>2011-02-03 11:14:44</system_timestamp>
                                                   <response_data>
                                                     <beginTime>04:00</beginTime>
                                                     <endTime>03:00</endTime>
                                                     <timeZone>0</timeZone>
                                                     <daylightSavings>N</daylightSavings>
                                                   </response_data>
                                                   <processing_time>0.351</processing_time>
                                                   <echo>
                                                     <transaction_id>12345a</transaction_id>
                                                     <provider_transaction_id>77bb</provider_transaction_id>
                                                     <provider_timestamp>2013-02-06 10:10:10</provider_timestamp>
                                                   </echo>
                                                </response>
                                                                
Parameters
Status codes
Response
// setAlerts()
This method allows alert messaging preferences to be set for a customer. Any alert that is defined and configured for a customer program can be enabled or disabled for each individual delivery channel. The alert configuration is passed in the JSON data format in the alerts parameter. The example below includes setting alert preferences for the 'BAUT' and 'BADJ' alert types.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String 50 characters or less AbC123-9999 Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String 15 characters or less 4sb62fh6w4h7w34g Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String 60 characters or less 9845dk-39fdk3fj3-4483483478 A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String PAN or PRN 074103447228 Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
alerts Yes JSON Must be valid JSON string formatted as shown in the example below. {"BADJ":{"email_flag":"1","pager_flag": "1"},"BAUT":{"email_flag":"1","pager_flag":"1"}} JSON encoded array of alerts: see below.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
404-01 Alert message type is not configured
404-02 Alert flag has not been setup
-1 Indicates that the application record failed to update or return.
Response codes-No alert
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Response codes-Alert given
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
badMsgIds A data structure in setAlerts() that contains badMsgId explanations. <badMsgIds>
  <badMsgId>Alert type 'BADJ' not found</badMsgId>
</badMsgIds>
badMsgid In setAlerts(); a returned alert. Alert type 'BADJ' not found
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>x</transaction_id>
  <provider_transaction_id>x</provider_transaction_id>
  <provider_timestamp>x</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call setAlerts and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/setAlerts \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'accountNo=074103447228' \ -d 'alerts= '
        
// The following Java code will make a setAlerts call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("accountNo", "074103447228"); params.put("alerts", " "); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/setAlerts"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a setAlerts call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'accountNo': '074103447228', 'alerts': ' '} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/setAlerts', data=payload, headers={'response-content-type': 'json'}) print('setAlerts response code: ' + r.json()['status_code'])
        
// The following PHP code will make a setAlerts call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/setAlerts'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'accountNo'=>'074103447228', 'alerts'=>' '); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a setAlerts call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/setAlerts" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&accountNo{4}&alerts{5}", sEndPoint, " ", " ", "550", "074103447228", " "); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a setAlerts call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/setAlerts") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "accountNo" => "074103447228", "alerts" => " "}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
Parameters
Status codes
Response codes-No alert Response codes-Alert given
// getCarrierList()
The getCarrierList() method returns a data set of carrier_idsand carrier names. The carrier_id that is returned is the carrier_id that is used in the createAccount() method.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
programid Yes Integer

Positive integer value

1032

Program ID number provided by Galileo.
Status codes
Status Code description
0 Success
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
found In getCarrierList(), a count of the Carriers being reported on. 2
carriers A data structure that lists one or more carriers. <carriers>
  <carrier>x</carrier>
</carriers>
carrier A data structure that contains information on a mobile phone service provider. <carrier>
  <carrier_id>23</carrier_id>
  <email_gateway>mms.mycricket.com</email_gateway>
  <carrier_name>Cricket</carrier_name>
  <carrier_display_name>Cricket</carrier_display_name>
</carrier>
carrier_id An ID number assigned to the associated carrier. 23
email_gateway A domain name to be used for translating emails to text messages with various phone carriers. mms.mycricket.com
carrier_name The name of the mobile phone service carrier. Cricket
carrier_display_name The name of the mobile phone service carrier. Cricket
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call getCarrierList and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/getCarrierList \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'programId=1032'
        
// The following Java code will make a getCarrierList call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("programId", "1032"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/getCarrierList"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a getCarrierList call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'programId': '1032'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/getCarrierList', data=payload, headers={'response-content-type': 'json'}) print('getCarrierList response code: ' + r.json()['status_code'])
        
// The following PHP code will make a getCarrierList call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/getCarrierList'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'programId'=>'1032'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a getCarrierList call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/getCarrierList" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&programId{5}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "1032"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a getCarrierList call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/getCarrierList") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "programId" => "1032"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
Parameters
Status codes
Response
// setAlertsBlackout()
This method allows the API consumer to set customer preferences for when messaging should not be delivered.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228
Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
beginTime Yes String HH:00 07:00 Time of day alerts must start after. (Can only be set to hours).
endTime Yes String HH:00 22:00 Time of day alerts must end. (Can only be set to hours).
timeZone Yes Integer

Integer range between -3 and 3

0

Time zone to calculate blackout between; -3=Hawaii, -2=Alaska, -1=Pacific, 0=Mountain, 1=Central, 2=Easter, 3=Atlantic
daylightSavings Yes String

Y or N

Y

Defines whether or not daylight savings time should be observed.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid Account
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call setAlertsBlackout and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/setAlertsBlackout \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228' \ -d 'beginTime=07:00' \ -d 'endTime=22:00' \ -d 'timeZone=0' \ -d 'daylightSavings=Y'
        
// The following Java code will make a setAlertsBlackout call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); params.put("beginTime", "07:00"); params.put("endTime", "22:00"); params.put("timeZone", "0"); params.put("daylightSavings", "Y"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/setAlertsBlackout"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a setAlertsBlackout call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228', 'beginTime': '07:00', 'endTime': '22:00', 'timeZone': '0', 'daylightSavings': 'Y'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/setAlertsBlackout', data=payload, headers={'response-content-type': 'json'}) print('setAlertsBlackout response code: ' + r.json()['status_code'])
        
// The following PHP code will make a setAlertsBlackout call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/setAlertsBlackout'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228', 'beginTime'=>'07:00', 'endTime'=>'22:00', 'timeZone'=>'0', 'daylightSavings'=>'Y'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a setAlertsBlackout call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/setAlertsBlackout" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}&beginTime{6}&endTime{7}&timeZone{8}&daylightSavings{9}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228", "07:00", "22:00", "0", "Y"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a setAlertsBlackout call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/setAlertsBlackout") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228", "beginTime" => "07:00", "endTime" => "22:00", "timeZone" => "0", "daylightSavings" => "Y"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    setAlertsBlackout() response example
                                            
                                            <?xml version="1.0" encoding="UTF-8"?>
                                            <response>
                                               <status_code>0</status_code>
                                               <status>Success</status>
                                               <system_timestamp>2011-02-03 11:14:44</system_timestamp>
                                               <response_data/>
                                               <processing_time>0.351</processing_time>
                                               <echo>
                                                 <transaction_id>12345a</transaction_id>
                                                 <provider_transaction_id>77bb</provider_transaction_id>
                                                 <provider_timestamp>2013-02-06 10:10:10</provider_timestamp>
                                               </echo>
                                            </response>
                                                            
Parameters
Status codes
Response
// verifyOnDemandAlertStatus()
Determine the current status of the customer's ability to use on demand alerts.
On demand status enumeration
The following action types allow the API consumer to fit the registering and unregistering process to their process design.
  • E Enroll and send verification PIN.
  • U Update mobile phone, enroll, and send verification PIN.
  • F Update mobile phone and force registration (no verification PIN sent to customer).
  • C Confirm PIN and register.
  • S Stop and unregister
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String 50 characters or less AbC123-9999 Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String 15 characters or less 4sb62fh6w4h7w34g Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String 60 characters or less 9845dk-39fdk3fj3-4483483478 A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String PAN or PRN 074103447228 Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid Account
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
on_demand_status The status of the SMS (on demand) alert enrollment of the customer. E
mobile_phone The mobile phone number that receives alerts. 8012223333
carrier_id An ID number assigned to the associated carrier. 2
pmt_ref_No A Galileo generated account number. 123456789012
prod_id Galileo generated product Id of the account. 123
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
                    verifyOnDemandAlertStatus() response example
                                                
                                                <?xml version="1.0" encoding="UTF-8"?>
                                                <response>
                                                   <status_code>0</status_code>
                                                   <status>Success</status>
                                                   <system_timestamp>2011-02-15 10:21:32</system_timestamp>
                                                   <response_data>
                                                     <on_demand_status>E</on_demand_status>
                                                     <mobile_phone>8012223333</mobile_phone>
                                                     <carrier_id>2</carrier_id>
                                                     <pmt_ref_no>123456789012</pmt_ref_no>
                                                     <prod_id>123</prod_id>
                                                   </response_data>
                                                   <processing_time>0.248</processing_time>
                                                   <echo>
                                                     <transaction_id>12345a</transaction_id>
                                                     <provider_transaction_id>77bb</provider_transaction_id>
                                                     <provider_timestamp>2013-02-06 10:10:10</provider_timestamp>
                                                   </echo>
                                                </response>
                                                                
                    verifyOnDemandAlertStatus() response example
                                                
                                                <?xml version="1.0" encoding="UTF-8"?>
                                                <response>
                                                   <status_code>0</status_code>
                                                   <status>Success</status>
                                                   <system_timestamp>2011-02-15 10:21:32</system_timestamp>
                                                   <response_data>
                                                     <on_demand_status>E</on_demand_status>
                                                     <mobile_phone>8012223333</mobile_phone>
                                                     <carrier_id>2</carrier_id>
                                                     <pmt_ref_no>123456789012</pmt_ref_no>
                                                     <prod_id>123</prod_id>
                                                   </response_data>
                                                   <processing_time>0.248</processing_time>
                                                   <echo>
                                                     <transaction_id>12345a</transaction_id>
                                                     <provider_transaction_id>77bb</provider_transaction_id>
                                                     <provider_timestamp>2013-02-06 10:10:10</provider_timestamp>
                                                   </echo>
                                                </response>
                                                                
Parameters
Status codes
Response
// modifyOnDemandAlertStatus()
This method enables the API consumer to be able to register and unregister a customer for on demand alerts.
Action types
The following action types allow the API consumer to fit the registering and unregistering process to their process design.
  • E Enroll and send verification PIN.
  • U Update mobile phone, enroll, and send verification PIN.
  • F Update mobile phone and force registration (no verification PIN sent to customer).
  • C Confirm PIN and register.
  • S Stop and unregister
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String 50 characters or less AbC123-9999 Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String 15 characters or less 4sb62fh6w4h7w34g Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String 60 characters or less 9845dk-39fdk3fj3-4483483478 A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String PAN or PRN 074103447228 Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
prodId Yes Integer Integer 501 Product id
mobilePhone Yes Number Valid phone number 8013656050 Cardholder's mobile phone Number
mobileCarrierid Conditional Integer Configurable list 8 Cardholder's mobile carrier -- configurable list.
actionType Yes String Single character types as defined above in the 'Action Types' table. E Single character action type.
verificationPin Conditional Number All numeric 4 digit numeric string. 1234 When calling the method with a type 'C', the verificationPin value passed will be validated against what was sent to the customer via text message.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid Account
476-01 Invalid verification PIN
476-02 Account not enrolled for on demand alerts.
476-03 Account is already registered for on demand alerts.
476-04 Current verification PIN is expired.
476-05 Verification PIN does not match the PIN on file.
476-06 Account has no mobile phone on file.
476-07 Mobile phone does not match the number on file.
476-08 Unknown action type or action is not currently supported.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call modifyOnDemandAlertStatus and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/modifyOnDemandAlertStatus \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228' \ -d 'prodId=501' \ -d 'mobilePhone=8018013677' \ -d 'mobileCarrierId=8' \ -d 'actionType=E'
        
// The following Java code will make a modifyOnDemandAlertStatus call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); params.put("prodId", "501"); params.put("mobilePhone", "8018013677"); params.put("mobileCarrierId", "8"); params.put("actionType", "E"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/modifyOnDemandAlertStatus"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a modifyOnDemandAlertStatus call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228', 'prodId': '501', 'mobilePhone': '8018013677', 'mobileCarrierId': '8', 'actionType': 'E'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/modifyOnDemandAlertStatus', data=payload, headers={'response-content-type': 'json'}) print('modifyOnDemandAlertStatus response code: ' + r.json()['status_code'])
        
// The following PHP code will make a modifyOnDemandAlertStatus call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/modifyOnDemandAlertStatus'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228', 'prodId'=>'501', 'mobilePhone'=>'8018013677', 'mobileCarrierId'=>'8', 'actionType'=>'E'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a modifyOnDemandAlertStatus call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/modifyOnDemandAlertStatus" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}&prodId{6}&mobilePhone{7}&mobileCarrierId{8}&actionType{9}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228", "501", "8018013677", "8", "E"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a modifyOnDemandAlertStatus call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/modifyOnDemandAlertStatus") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228", "prodId" => "501", "mobilePhone" => "8018013677", "mobileCarrierId" => "8", "actionType" => "E"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    modifyOnDemandAlertStatus() response example
                                            
                                            <?xml version="1.0" encoding="UTF-8"?>
                                            <response>
                                               <status_code>0</status_code>
                                               <status>Success</status>
                                               <system_timestamp>2011-02-15 10:21:32</system_timestamp>
                                               <response_data/>
                                               <processing_time>0.248</processing_time>
                                               <echo>
                                                 <transaction_id>12345a</transaction_id>
                                                 <provider_transaction_id>77bb</provider_transaction_id>
                                                 <provider_timestamp>2013-02-06 10:10:10</provider_timestamp>
                                               </echo>
                                            </response>
                                                            
Parameters
Status codes
Response
// addCard()
The addCard() method allows for another card to be added to an existing account (and a retail location card replacement option for card programs with a retail integration). Note that addCard() is not intended to add multiple cards to an account.
Please see the Platform Overview (under the Documentation drop down) for information on the Account to Card relationship within the Galileo platform.
Below are a few example scenarios for the use of addCard().
Example (1): Customer has lost their instant issue card and wants a new card immediately at a storefront. The customer has not yet received a personalized card. The addCard() method can be used to assign the instant issue card to the customer.
Example (2): Customer has lost their personalized card and wants a temporary instant issue card to use until a new personalized card arrives in the mail. The addCard() method can be used to assign an instant issue card to their existing personalized product account. The product ID of the personalized account must be passed in in order to override the use of the product ID associated with the instant issue card.
Example (3): Customer has a virtual card account and an additional virtual card (different PAN) is requested.
Example (4): Virtual card lost/stolen: Mark a card lost/stolen using modifyStatus() Type 8 or 9. Make an addCard() call to create a new card number. Note that this is for virtual cards only.
Example (5): Expired virtual card: Make an addCard() call to create a new card number. Note that this is for virtual cards only.
Parameters
The parameters below can be submitted with the method. Note that some parameters are required.
Parameters Required Data type Pattern Notes Example value
apiLogin Yes String 50 characters or less Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address. AbC123-9999
apiTransKey Yes String 15 characters or less Web Service Password as provided and authenticated by Galileo for the requesting IP Address. 4sb62fh6w4h7w34g
providerId Yes Integer 10 digits or less Galileo issued unique Provider identifier. 9999
transactionId Yes String 60 characters or less A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction. 9845dk-39fdk3fj3-4483483478
accountNo Yes String PAN or PRN Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier). 074103447228
prodId Yes Integer Integer Product ID 501
newAccountNo No String PAN or PRN or Package ID Can be either a PAN (the 16 digit card number), PRN (a unique product Identifier used for internal Galileo processing and added security), or Package ID (Galileo retail card packaging identifier). 123456789012
sharedBalance No Boolean 0 or 1 Define whether or not an additional account will share the balance with the primary. Should never be set to a value of 1 if the primaryAccount is not passed. 0=false, 1=true 1
creditLimit No Amount Monetary amount greater than 0 Credit limit for card based spending control (currently only available for credit processing). 500.25
singleUse No String Y or N Spending control parameter that flags card for one purchasing transaction (currently only available for credit processing). Y
Status codes
Codes that define the status of the transaction.
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid Account
24 Duplicate transaction
442-01 Invalid instant issue account
442-02 This product is not configured to allow shared balances.
442-03 This product is not configured to allow the same product to be added.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
pmt_ref_no A Galileo generated account number. 008103023340
product_id Galileo generated integer. 1094
galileo_account_number Galileo generated integer account number, also known as balance ID. 1181464
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call addCard and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/addCard \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228' \ -d 'prodId=501'
        
// The following Java code will make a addCard call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); params.put("prodId", "501"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/addCard"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a addCard call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228', 'prodId': '501'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/addCard', data=payload, headers={'response-content-type': 'json'}) print('addCard response code: ' + r.json()['status_code'])
        
// The following PHP code will make a addCard call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/addCard'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228', 'prodId'=>'501'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a addCard call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/addCard" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}&prodId{6}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228", "501"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a addCard call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/addCard") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228", "prodId" => "501"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    modifyOnDemandAlertStatus() response example
                                                
                                                <?xml version="1.0" encoding="UTF-8"?>
                                                <response>
                                                   <status_code>0</status_code>
                                                   <status>Success</status>
                                                   <system_timestamp>2011-02-15 10:21:32</system_timestamp>
                                                   <response_data/>
                                                   <processing_time>0.248</processing_time>
                                                   <echo>
                                                     <transaction_id>12345a</transaction_id>
                                                     <provider_transaction_id>77bb</provider_transaction_id>
                                                     <provider_timestamp>2013-02-06 10:10:10</provider_timestamp>
                                                   </echo>
                                                </response>
                                                                
Parameters
Status codes
Response
// voidAddCard()
The voidAddCard() method allows the API consumer to void or cancel a card that was added to an account using the addCard() method. The voidAddCard() method requires the original transaction ID that was used in the related addCard() method call. The accountNo parameter that is passed is expected to be the same accountNo parameter value that was passed in the related addCard() method call.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less AbC123-

9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionIdr Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid Account
24 Duplicate transaction
500-01 Card not found.
-1 Indicates that the application record failed to update or return.
Response
Description Description Example value
Status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call voidAddCard and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/voidAddCard \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228'
        
// The following Java code will make a voidAddCard call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/voidAddCard"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a voidAddCard call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/voidAddCard', data=payload, headers={'response-content-type': 'json'}) print('voidAddCard response code: ' + r.json()['status_code'])
        
// The following PHP code will make a voidAddCard call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/voidAddCard'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a voidAddCard call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/voidAddCard" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a voidAddCard call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/voidAddCard") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    voidAddCard() response example
                                            
                                            <?xml version="1.0" encoding="UTF-8"?>
                                            <response>
                                               <status_code>0</status_code>
                                               <status>Success</status>
                                               <system_timestamp>2011-03-21 13:40:50</system_timestamp>
                                               <response_data/>
                                               <processing_time>0.796</processing_time>
                                               <echo>
                                                 <transaction_id>12345a</transaction_id>
                                                 <provider_transaction_id>77bb</provider_transaction_id>
                                                 <provider_timestamp>2013-02-06 10:10:10</provider_timestamp>
                                               </echo>
                                            </response>
                                                            
Parameters
Status codes
Response
// activateCard()
Note: This method does not work with virtual card accounts. If you need to activate a virtual card, a modifyStatus() type 7 call should be made.
Parameters
The parameters below can be submitted with the method. Note that some parameters are required.
Parameter Required Data type Pattern Notes Example value
apiLogin Yes String 50 characters or less Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address. AbC123-9999
apiTransKey Yes String 15 characters or less Web Service Password as provided and authenticated by Galileo for the requesting IP Address. 4sb62fh6w4h7w34g
providerId Yes Integer 10 digits or less Galileo issued unique Provider identifier. 9999
transactionId Yes String 60 characters or less A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction. 9845dk-39fdk3fj3-4483483478
accountNo Yes String PAN or PRN or cardID. Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier), or a card ID (integer identifier of the card as found in the raw data file (RDF)). 074103447228
cardExpiryDate Yes Date YYYY-MM Card Expiration Date 2019-01
cardSecurityCode No Number 3 digits This is the CVV value of the new card to be activated. If a value is submitted, the new card will be tested against that value. 123
cardNumberLastFour No Number 4 digits If PRN is passed as accountNo, this parameter can be used to ensure that the correct card is selected if the cardholder has more than one active card related to their account. 0789
Status codes
Codes that define the status of the activateCard() transaction.
Status Code description
0 Success
12 Invalid Account
24 Duplicate Transaction
467-01 No non-activated card found that match all parameters.
467-02 No non-activated cards found.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
Status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
encrypted_pass_data An encrypted JSON file containing the sensitive information needed to add a card to Apple Pay. F92C1D45EFF127F92C1D45EFF127F92C1D45EFF127F92C1D45EFF127==
activation_data The request's activation data. MBPAC-1-FK-123456.1--TDEA-8BF291C91F3ED4EF92C1D45EFF127C1F9ABC12348D
ephemeral_public_key A generated key that is combined with a private key. 0499a6f42e83ea4f150a78780ffb562c9cdb9b
7507bc5d28cbfbf8cc3ef0af68b36e60cb10db69127830f7f899492
017089e3b73c83fcf0ebdf2c06b613c3f88b7
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call activateCard and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/activateCard \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228' \ -d 'cardExpiryDate=2019-01'
        
// The following Java code will make a activateCard call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); params.put("cardExpiryDate", "2019-01"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/activateCard"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a activateCard call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228', 'cardExpiryDate': '2019-01'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/activateCard', data=payload, headers={'response-content-type': 'json'}) print('activateCard response code: ' + r.json()['status_code'])
        
// The following PHP code will make a activateCard call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/activateCard'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228', 'cardExpiryDate'=>'2019-01'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a activateCard call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/activateCard" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}&cardExpiryDate{6}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228", "2019-01"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a activateCard call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/activateCard") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228", "cardExpiryDate" => "2019-01"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    activateCard() response example
                                                        
                                                        <?xml version="1.0" encoding="UTF-8"?>
                                                        <response>
                                                           <status_code>0</status_code>
                                                           <status>Success</status>
                                                           <system_timestamp>2015-04-29 10:25:15</system_timestamp>
                                                           <response_data>
                                                             <encrypted_pass_data>F92C1D45EFF127F92C1D45EFF127F92C1D45EFF127F92C1D45EFF127==</encrypted_pass_data>
                                                             <activation_data>MBPAC-1-FK-123456.1--TDEA-8BF291C91F3ED4EF92C1D45EFF127C1F9ABC12348D</activation_data>
                                                             <ephemeral_public_key>0499a6f42e83ea4f150a78780ffb562c9cdb9b7507bc5d28cbfbf8cc3ef0af68b36e60cb10db69127830f7f899492017089e3b73c83fcf0ebdf2c06b613c3f88b7</ephemeral_public_key>
                                                           </response_data>
                                                           <processing_time>0.407</processing_time>
                                                           <echo>
                                                             <transaction_id>916171485</transaction_id>
                                                             <provider_transaction_id>GAAP test</provider_transaction_id>
                                                             <provider_timestamp>2015-04-29 10:24:15</provider_timestamp>
                                                           </echo>
                                                        </response>
                                                                        
Parameters
Status codes
Response
// getCard()
This is a basic lookup method for card information. The ability exists within this method to return sensitive card information. Sensitive parameters can be partially returned or removed by configuration based on the API consumer's needs and PCI posture. You may request provider_params to be updated via request to Galileo Processing. (This will require the ability to securely handle data).
getCard() is a PCI-compliance sensitive method. When the provider_params are enabled, it returns a PAN/cvv/expdate.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionIdr Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique product Identifier used for internal Galileo processing and added security) or card_id (integer identifier of the card as found in RDF or getAccountCards()).
Status codes
Codes that define the status of the activateCard() transaction.
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
-1 Indicates that the application record failed to update or return.
Response
Description Description Example value
Status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
card_number A PAN or 16 digit card number. 123412XXXXXX1234
expiry_date Expiration date of the card. 2018-05-22
card_security_code The card verification value (cvv), is a card anti-fraud measure. 123
Status The condition of a process or response (such as embossed card, account, freeze, and so on). L
card_id Integer identifier of the card as found in the raw data file (RDF). Unique identifier for a PAN. 5433
external_card_id Alpha numeric partner specified external card identity. 1234567891234567891234567891234
pmt_ref_No A Galileo generated account number. 008100001671
first_name A person's first name as listed on the account. John
middle_name A person's middle name as listed on the account. Elizabeth
last_name A person's last name as listed on the account. Doe
encrypted_card_number Encrypted number for the card. H92JK7DUP4359L257
encrypted_expiry_date Encrypted expiration date for the card. JK7DAB4359L25
spend_controls A data structure that displays any spend_ controls settings. <spend_controls>
  <available_credit>5000</available_credit>
  <single_use>Y</single_use>
  <credit_limit>5000</credit_limit>
</spend_controls>
available_credit The amount available to be charged to a credit card. 5000
single_use A flag that indicated an alias credit card number, exhausted after one use. Y
credit_limit The maximum outstanding balance allowed on a credit card. 5000
embossed_cards A data structure that displays information associated with an embossed card. <embossed_cards>
 <embossed_card>x</embossed_card>
</embossed_cards>
embossed_card A data structure that displays information for an embossed card. Associated with an embossed status flag, created_date, emboss_date, expiry_date, and shipping_date. <embossed_card>
  <status>N</status>
  <created_date>2009-05-01</created_date>
  <emboss_date>2009-05-05</emboss_date>
  <expiry_date>2012-05-22</expiry_date>
  <shipping_type>standard</shipping_type>
</embossed_card>
Status The condition of a process or response (such as embossed card, account, freeze, and so on). N
created_date The date when the cardholder first applied for the card. 2018-05-01
emboss_date The date the card was sent to be manufactured. 2018-05-01
expiry_date Expiration date of the card. 2012-05-22
shipping_type The shipping type used to ship the cards to the cardholder, Standard or Express Mail. Standard
freeze_info Associated with the Frozen status, and the start and end date of a card. Frozen status=card locked out. Unfrozen status=card usable. (Freeze only affects authorization approvals). <freeze_info>
  <status>Frozen</status>
  <start_date>2015-05-03 00:00:00</start_date>
  <end_date>2015-05-03 23:59:59</end_date>
</freeze_info>
start_date Date the freeze was activated. (Specific to freeze_info). 2015-05-03 00:00:00
end_date Date the freeze was ended. (Specific to freeze_info). 2015-05-03 23:59:59
pin_fail_count A flag for the PIN fail count (0 or -1). -1
pin_fail_date Date a PIN fail was recorded. 2018-05-22
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Stores a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call getCard and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/getCard \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228'
        
// The following Java code will make a getCard call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/getCard"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a getCard call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/getCard', data=payload, headers={'response-content-type': 'json'}) print('getCard response code: ' + r.json()['status_code'])
        
// The following PHP code will make a getCard call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/getCard'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a getCard call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/getCard" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a getCard call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/getCard") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    getCard() response example
                                            
                                            <?xml version="1.0" encoding="UTF-8"?>
                                            <response>
                                               <status_code>0</status_code>
                                               <status>Success</status>
                                               <system_timestamp>2011-02-09 14:32:43</system_timestamp>
                                               <response_data>
                                                 <card_number>515069XXXXXX6299</card_number>
                                                 <expiry_date>2009-05-22</expiry_date>
                                                 <card_security_code>123</card_security_code>
                                                 <status>L</status>
                                                 <card_id>5433</card_id>
                                                 <external_card_id/>
                                                 <pmt_ref_no>008100001671</pmt_ref_no>
                                                 <first_name>John</first_name>
                                                 <middle_name>Scott</middle_name>
                                                 <last_name>Doe</last_name>
                                                 <encrypted_card_number/>
                                                 <encrypted_expiry_date/>
                                                 <spend_controls>
                                                   <available_credit>5000</available_credit>
                                                   <single_use>Y</single_use>
                                                   <credit_limit>5000</credit_limit>
                                                 </spend_controls>
                                                 <embossed_cards>
                                                   <embossed_card>
                                                     <status>N</status>
                                                     <created_date>2009-05-01</created_date>
                                                     <emboss_date>2009-05-05</emboss_date>
                                                     <expiry_date>2012-05-22</expiry_date>
                                                     <shipping_type>standard</shipping_type>
                                                   </embossed_card>
                                                   <embossed_card>
                                                     <status>Y</status>
                                                     <created_date>2011-05-01</created_date>
                                                     <emboss_date>2011-05-05</emboss_date>
                                                     <expiry_date>2015-05-22</expiry_date>
                                                     <shipping_type>standard</shipping_type>
                                                   </embossed_card>
                                                 </embossed_cards>
                                                 <freeze_info>
                                                   <status>Frozen</status>
                                                   <start_date>2015-05-03 00:00:00</start_date>
                                                   <end_date>2015-05-03 23:59:59</end_date>
                                                 </freeze_info>
                                                 <pin_fail_count>0</pin_fail_count>
                                                 <pin_fail_date/>
                                               </response_data>
                                               <processing_time>0.274</processing_time>
                                               <echo>
                                                 <transaction_id>12345a</transaction_id>
                                                 <provider_transaction_id>77bb</provider_transaction_id>
                                                 <provider_timestamp>2013-02-06 10:10:10</provider_timestamp>
                                               </echo>
                                            </response>
                                                            
Parameters
Status codes
Response
// verifyInstantIssueCard()
Returns data related to an instant issue card product. The ability exists within this method to return sensitive card information. Sensitive parameters can be partially returned or removed by configuration based on the API consumers needs and PCI posture.
verifyInstantIssueCard() is a PCI-compliance sensitive method.. When the provider_params are enabled, it returns a PAN/cvv/expdate. You may request provider_params to be updated via request to Galileo Processing. (This will require the ability to securely handle data).
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionIdr Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
prodId No Integer

Integer

501

Product ID
loadType No String

2 characters

RL

Payment types are configurable per client. Contact your account representative to determine which types you have implemented. If no loadType value is specified, the default loadType value RL will be used.
Status codes
Codes that define the status of the activateCard() transaction.
Status Code description
0 Success
2 Invalid parameter(s)
25 Invalid or unconfigured type
495-01 Invalid instant issue card
495-02 Expired
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
Status The condition of a process or response (such as embossed card, account, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
Status The status of the card. See the 'Card Statuses' section of Enumerations in the Sandbox documentation. X
pmt_ref_No A Galileo generated account number. 074133863881
prod_id Galileo generated product Id of the account. 1208
max_load_amount The maximum amount that can be loaded on a card. 400
card_id Integer identifier of the card as found in the raw data file (RDF). Unique identifier for a PAN. 3314216
card_number A PAN or 16 digit card number. 4754310166927767
expiry_date Expiration date of the card. 2018-11-28
card_security_code The card verification value (cvv), is a card anti-fraud measure. 123
batch_id The ID of a request for a batch of instant issue cards to be created. 200031531029
case_id Physical cards are shipped in bundles, which are divided by boxes. A case_id is a tracking number on each box and bundle. 12345xxx
box_id A shipping tracking number on a box of shipped cards. 12345xxx
bundle_id A shipping tracking number on the bundle of shipped cards. 12345xxx
galileo_location_id A code for the location at which account was created, if applicable. Can be provided by client or Galileo. 1
partner_location_id A code for the partner location. 0200
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call verifyInstantIssueCard and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/verifyInstantIssueCard \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228'
        
// The following Java code will make a verifyInstantIssueCard call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/verifyInstantIssueCard"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a verifyInstantIssueCard call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/verifyInstantIssueCard', data=payload, headers={'response-content-type': 'json'}) print('verifyInstantIssueCard response code: ' + r.json()['status_code'])
        
// The following PHP code will make a verifyInstantIssueCard call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/verifyInstantIssueCard'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a verifyInstantIssueCard call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/verifyInstantIssueCard" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a verifyInstantIssueCard call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/verifyInstantIssueCard") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    verifyInstantIssueCard() response example
                                                        
                                                        <?xml version="1.0" encoding="UTF-8"?>
                                                        <response>
                                                           <status_code>0</status_code>
                                                           <status>Success</status>
                                                           <system_timestamp>2018-01-17 13:48:30</system_timestamp>
                                                           <response_data>
                                                             <status>X</status>
                                                             <pmt_ref_no>074133863881</pmt_ref_no>
                                                             <prod_id>1208</prod_id>
                                                             <max_load_amount>400</max_load_amount>
                                                             <card_id>3314216</card_id>
                                                             <card_number>4754310166927767</card_number>
                                                             <expiry_date>2018-11-28</expiry_date>
                                                             <card_security_code>123</card_security_code>
                                                             <batch_id>200031531029</batch_id>
                                                             <case_id/>
                                                             <box_id/>
                                                             <bundle_id/>
                                                             <galileo_location_id>1</galileo_location_id>
                                                             <partner_location_id>0200</partner_location_id>
                                                           </response_data>
                                                           <processing_time>0.387</processing_time>
                                                           <echo>
                                                             <transaction_id>742405162</transaction_id>
                                                             <provider_transaction_id>GAAP test</provider_transaction_id>
                                                             <provider_timestamp>2018-01-17 13:27:56</provider_timestamp>
                                                           </echo>
                                                        </response>
                                                                        
Parameters
Status codes
Response
// createCardImage()
The modifyCardImage() method allows you to modify an uploaded image (as uploaded by createCardImage()). The method createCardImage() can upload an image, but it cannot be modified. The method modifyCardImage() accesses the image parameters used by the asset system.
Parameters
Parameters Required Data type Pattern Description
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

Unique transaction identifier (generated by provider). There are rare circumstances where allowed characters are more limited. Refer to individual method definitions for any variances.
providerTransactionId No String

60 characters or less

47823438032233777

Secondary transaction identifier (generated by provider).
providerTimestamp No Date

19 characters Format: YYYY-MM-DD

HH:MM:SS 2017-05-01 13:01:01

API consumers should use this parameter if they wish to store the related timestamp in their system for reporting and troubleshooting purposes.
configId Yes String

At most 10 alphanumeric characters

sd47NtcH4

ID mapping to asset_template_id value in asset template data (provider_id must match if present in record).
fontFileName No String

A font available to the asset application (see list below).

OpenSans-Regular.ttf

The font to use for any text placed on the card.
fontColor No String

3 comma separated values between 0 and 255: red,green,blue

20,230,3

The color to use for any text placed on the card.
cardBlockSpaces No Integer

value between 0 and 999.

3

Number of  spaces to use in between each card number chunk.
cardAttributes No String

4 comma separated values: fontSize,angle,x,y

21,0,10,10

Controls the font size and placement of the card value, angle value is not used.
cvvAttributes No String 4 comma separated values: fontSize,angle,x,y 21,0,20,20 Controls the font size and placement of the cvv value, angle value is not used.
expiryAttributes No String

4 comma separated values: fontSize,angle,x,y

21,0,30,30

Controls the font size and placement of the expire year value, angle value is not used.
nameAttributes No String

4 comma separated values: fontSize,angle,x,y

21,0,40,40

Controls the font size and placement of the name value, angle value is not used.
Available card fonts
toolkit-entypo.ttf
RHPFDinMono.ttf
OpenSans-Semibold.ttf
OpenSans-SemiboldItalic.ttf
OpenSans-Regular.ttf
OpenSans-Light.ttf
OpenSans-LightItalic.ttf
OpenSans-Italic.ttf
OpenSans-ExtraBold.ttf
OpenSans-ExtraBoldItalic.ttf
OpenSans-Bold.ttf
OpenSans-BoldItalic.ttf
OcrA.ttf
kredit.ttf
kredit_shine.ttf
kredit_front.ttf
kredit_back.ttf
glyphicons-halflings-regular.ttf

Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call createCardImage and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/createCardImage \ -d 'apiLogin= ' \ -d 'providerId=550= ' \ -d 'transactionId=40985-random-string-10473' \ -d 'templateId= '
        
// The following Java code will make a createCardImage call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("providerId=550", " "); params.put("transactionId", "40985-random-string-10473"); params.put("templateId", " "); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/createCardImage"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a createCardImage call # and print the response status code. import requests payload = {'apiLogin': ' ', 'providerId=550': ' ', 'transactionId': '40985-random-string-10473', 'templateId': ' '} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/createCardImage', data=payload, headers={'response-content-type': 'json'}) print('createCardImage response code: ' + r.json()['status_code'])
        
// The following PHP code will make a createCardImage call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/createCardImage'; $params = array('apiLogin'=>' ', 'providerId=550'=>' ', 'transactionId'=>'40985-random-string-10473', 'templateId'=>' '); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a createCardImage call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/createCardImage" string sAPICall = string.Format("{0}?apiLogin{1}&providerId=550{2}&transactionId{3}&templateId{4}", sEndPoint, " ", " ", "40985-random-string-10473", " "); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a createCardImage call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/createCardImage") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "providerId=550" => " ", "transactionId" => "40985-random-string-10473", "templateId" => " "}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    createCardImage() response example
                                                        <?xml
                                                        version="1.0" encoding="UTF-8"?>
                                                        <response>
                                                        <status_code>0</status_code>
                                                        <status>Success</status>
                                                        <system_timestamp>2015-04-29
                                                        10:25:15</system_timestamp>
                                                        <response_data/>  
                                                        <processing_time>0.407</processing_time>
                                                        <echo>
                                                        <transaction_id>916171485</transaction_id>
                                                        <provider_transaction_id>77bb</provider_transaction_id>
                                                        <provider_timestamp>2015-04-29
                                                        10:24:15</provider_timestamp>
                                                        </echo>
                                                        </response>
                                                        
                                                                        
Status codes
Status Code description
0 Success
567-01 Asset configuration record not found.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// createCardTemplate()
The createCardTemplate() methods allows you to create a new record in our asset system. This endpoint requires an image to be uploaded under the form name 'image', which will be converted to a JPEG file.
This template can be used when calling createCardImage() by passing in the templateId value returned by this method, the parameters used in this call will be the defaults for the createCardImage() method. Any parameter used in createCardImage() will override values from this call when creating the asset configuration record.
Parameters
Parameters Required Data type Pattern Description Example
apiLogin Yes String 50 characters or less Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address. AbC123-9999
providerId Yes Integer 10 digits or less Galileo issued unique Provider identifier. 9999
transactionId Yes String 60 characters or less Unique transaction identifier (generated by provider). There are rare circumstances where allowed characters are more limited. Refer to individual method definitions for any variances. 9845dk-39fdk3fj3-4483483478
providerTransactionId No String 60 characters or less Secondary transaction identifier (generated by provider). 47823438032233777
providerTimestamp No Date 19 characters Format: YYYY-MM-DD HH:MM:SS API consumers should use this parameter if they wish to store the related timestamp in their system for reporting and troubleshooting purposes. 2017-05-01 13:01:01
logoCoordinates No String two comma separated values: x,y Coordinates of where to place the logo image if present on the template image. This will be the pixels from the top left of the template image. 20,40
fontFileName No String A font available to the asset application (see list below) The font to use for any text placed on the card. OpenSans-Regular.ttf
fontColor No String 3 comma separated values between 0 and 255: red,green,blue The color to use for any text placed on the card. 20,230,3
cardBlockSpaces No Integer value between 0 and 999 Number of  spaces to use in between each card number chunk. 3
cardAttributes No String 4 comma separated values: fontSize,angle,x,y Controls the font size and placement of the card value, angle value is not used. 21,0,10,10
cvvAttributes No String 4 comma separated values: fontSize,angle,x,y Controls the font size and placement of the cvv value, angle value is not used. 21,0,20,20
expiryAttributes No String 4 comma separated values: fontSize,angle,x,y Controls the font size and placement of the expire year value, angle value is not used. 21,0,30,30
nameAttributes No String 4 comma separated values: fontSize,angle,x,y Controls the font size and placement of the name value, angle value is not used. 21,0,40,40
Available card fonts
toolkit-entypo.ttf
RHPFDinMono.ttf
OpenSans-Semibold.ttf
OpenSans-SemiboldItalic.ttf
OpenSans-Regular.ttf
OpenSans-Light.ttf
OpenSans-LightItalic.ttf
OpenSans-Italic.ttf
OpenSans-ExtraBold.ttf
OpenSans-ExtraBoldItalic.ttf
OpenSans-Bold.ttf
OpenSans-BoldItalic.ttf
OcrA.ttf
kredit.ttf
kredit_shine.ttf
kredit_front.ttf
kredit_back.ttf
glyphicons-halflings-regular.ttf

Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call createCardTemplate and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/createCardTemplate \ -d 'apiLogin= ' \ -d 'providerId= ' \ -d 'transactionId=66340-random-string-34846'
        
// The following Java code will make a createCardTemplate call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("providerId", " "); params.put("transactionId", "66340-random-string-34846"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/createCardTemplate"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a createCardTemplate call # and print the response status code. import requests payload = {'apiLogin': ' ', 'providerId': ' ', 'transactionId': '66340-random-string-34846'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/createCardTemplate', data=payload, headers={'response-content-type': 'json'}) print('createCardTemplate response code: ' + r.json()['status_code'])
        
// The following PHP code will make a createCardTemplate call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/createCardTemplate'; $params = array('apiLogin'=>' ', 'providerId'=>' ', 'transactionId'=>'66340-random-string-34846'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a createCardTemplate call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/createCardTemplate" string sAPICall = string.Format("{0}?apiLogin{1}&providerId{2}&transactionId{3}", sEndPoint, " ", " ", "66340-random-string-34846"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a createCardTemplate call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/createCardTemplate") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "providerId" => " ", "transactionId" => "66340-random-string-34846"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    createCardTemplate() response example
                                                
                                                <?xml
                                                version="1.0" encoding="UTF-8"?>
                                                <response> 
                                                <status_code>0</status_code> 
                                                <status>Success</status> 
                                                <system_timestamp>2015-04-29
                                                10:25:15</system_timestamp> 
                                                <response_data>   
                                                 <template_id>4321</template_id> 
                                                </response_data> 
                                                <processing_time>0.407</processing_time> 
                                                <echo>   
                                                <transaction_id>916171485</transaction_id>   
                                                <provider_transaction_id>77bb</provider_transaction_id>   
                                                <provider_timestamp>2015-04-29 10:24:15</provider_timestamp> 
                                                </echo>
                                                </response>
                                                
                                                                
Status codes
Status Code Description
0 Success
566-01 Unable to parse image data.
566-02 Image is invalid format, must be 500x315.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
template_id Primary key for asset_template record created by endpoint. 4321
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// createVirtualCard()
The createVirtualCard() method is very similar to the createAccount() method. The createVirtualCard() differs from createAccount() in that it will only create an account/card combination with a virtual card product ID and the method returns full PAN, expiry, and CVV2. Similar to createAccount(), it also allows the loading of funds to the card at the time of creation. If a call to createVirtualCard() is made using a product ID that is not defined as a virtual card, an invalid product response will be returned. createVirtualCard() is a PCI-compliance sensitive method. When the provider_params are enabled, it returns a PAN/cvv/expdate.
Duplicate use of Customer ID
The createVirtualCard() method can be configured to allow or disallow the duplicate use of customer id. This configuration is set at the product level. If duplicate use of customer id is disallowed, during the createVirtualCard() call the enrollment data is checked to confirm that there are no accounts in application submitted (V), canceled without refund (Z), or active (N) status. If no account is found in these statuses, the enrollment is allowed.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
prodId Yes Integer

Integer

501

Product ID
id No String

See section on ID Types.

123456789

Unique identifier for Cardholder, usually SSN (see Appendix Enumerations section on Customer ID Types).
idType Conditional Integer

See section on ID Types.

2

Identifies the type of parameter ID (see Appendix Enumerations section on Customer ID Types).
id2 No String

See Customer ID Type section.

123456789012|UT|12/25/2020

Unique identifier for a Cardholder, used for a secondary ID.
idType2 Conditional Integer

See section on ID Types.

1

Identifies the type of ID used in the id2 response field. (See Customer ID Types in documentation).
location No String

Must be a number if type is 0. Must be less than 15 if type is 1.

a455-3483

Unique location identifier. See location types.
locationType No Integer

0, 1, or 2

1

  • 0=Galileo Location ID
  • 1=Partner Location ID
  • 2=Don't Validate
locale No String

Accepted values = "en_US", "es_US", "fr_CA", and "en_CA"

en_US

Sets customer language preference. Default is "en_US".
firstName No String

1-30 characters; letters, spaces, numbers, and some punctuation:
, . ? @ & ! # ' ~ * - ; +.

Ed

Cardholder's first name
middleName No String

Letters and spaces, maximum length of 30 characters.

W

Cardholder's middle name
lastName No String

30 characters; letters, spaces, numbers, and some punctuation:
, . ? @ & ! # ' ~ * - ; +.

Harley

Cardholder's last name
dateOfBirth No Date

YYYY-MM-DD, minimum age per the business rules for the program.

1980-01-01

Cardholder's birth date
address1 No String

Maximum length -- 40 characters. Cannot be a P.O. Box.

33 Maple Street

Cardholder's address line 1
address2 No String Maximum length of 30 characters. #4B Cardholder's address line 2
city No String

Letters and spaces, maximum length 20 characters.

Salt Lake City

Cardholder's city
state No String

Valid 2 character state abbreviation.

UT

Cardholder's state
postalCode No String

12345 or 12345-1234 (US), K1A-1A1 (CA)

84121

Cardholder's postal code (zip code)
countryCode No Number

Three digit country code.

840

Three digit ISO numeric UN M49 country code; Example USA=840, Canada=124.
expressMail No Boolean

0 or 1

0

Use express mail to send the new card plastic.
primaryPhone No Number

Valid phone number

8013656050

Cardholder's primary phone number
otherPhone No Number

Valid phone number

8013656050

Cardholder's other phone number
mobilePhone No Number

Valid phone number

8013656050

Cardholder's mobile phone number
mobileCarrierId Conditional Integer

Configurable list

8

Cardholder's mobile carrier -- configurable list.
email No String

Email Address

user@fakedomain.com

Cardholder's email
webUid No String

Must be unique. Start with a letter. Only letters and numbers. Case insensitive.

4j9KH3kkdh

Cardholder website username
webPwd No String

At least 8 characters and have an uppercase character, lower case character and a number.

eharley

Cardholder website password
secretQuestion No String

Letters, spaces and '?', maximum length of 50 characters.

What was the name of your first pet?

Secret Question
secretAnswer No String

Letters and spaces, maximum length of 50 characters.

Larry

Secret Answer
loadAmount No Number

Monetary amount greater than 0.

100

Currency amounts passed as whole or fractional amounts, examples: '100.00', '100', or '100.73'. Initial load amount on card must be within product load limits or designated amount for Instant Issue card.
loadType No String

2 characters

RL

Payment types are configurable per client. Contact your account representative to determine which types you have implemented. If no loadType value is specified, the default loadType value RL will be used.
externalAccountId No String

Letters and numbers, maximum length 30 characters.

553b45sbs

Identifier external to the Galileo platform to be stored and associated with the respective account.
primaryAccount No Number

PAN or PRN

123456789012

PAN (16 digit card number) or PRN (12 digit account identifier) of the primary account a secondary account is to be associated with. This is only necessary when creating a secondary card.
sharedBalance Conditional Boolean

0 or 1

1

Define whether or not an additional account will share the balance with the primary. Should never be set to a value of 1 if the primaryAccount is not passed. 0=false, 1=true
userData No String

Letters, numbers and spaces. Maximum length of 50 characters.

a4434gg44

Identifier external to Galileo platform to be stored and associated with the respective account. The most common usage of this parameter has been tracking the identity of affiliate marketing traffic.
verifyOnly No Boolean

0 or 1

0

If a value of '1' is passed, the parameter data will be tested only. No transaction will be committed.
loadFromAccountNo No String

PAN or PRN

123456789012

Same as accountNo in validation. This parameter is used when loading the account at the time of creation and wanting loaded funds to be transferred from another account within the same card program.
sweepDate No Date YYYY-MM-DD If provided, sweepDate specifies the last date that a daily sweep should be performed. If daily account sweeping is not configured for your product/program, this parameter can be ignored.
creditLimit No Amount

Monetary amount greater than 0.

500.25

Credit limit for card based spending control (currently only available for credit processing).
singleUse No String

Y or N

Y

Spending control parameter that flags card for one purchasing transaction (currently only available for credit processing).
Status codes
The createVirtualCard() method will return customer identification program (CIP) data when real-time CIP is enabled. The XML node in response is the parent node to potentially several CIP provider responses. Currently only CIP response is for the APS CIP. The child node of the node has the following possible values: 'Pass', 'Refer', or 'Fail'. A 'model_results' node will contain results specific to the CIP decision tree setup.
Status Code description
0 Success
2 Invalid parameter(s)
24 Duplicate transaction
46 Invalid product
100 Success (Verify)
520-01 Load amount outside of load limits.
520-02 Could not create enrollment.
520-03 Could not load card.
520-04 Account created, ID validation failed.
520-05 Specified load from account number is invalid.
520-06 A load was attempted for a non-positive amount.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status_code The status of the response. 0
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
system_timestamp A system generated timestamp. 2011-10-07 10:25:07
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
  x
</response_data>
new_account Acts as a logical separator if multiple accounts are created on the same call. <new_account>
  x
</new_account>
pmt_ref_no A Galileo generated account number. 074129972670
product_id Galileo generated integer. 560
galileo_account_number Galileo generated integer account number, also known as balance ID. 935631
cip Cardholder identification structure. Acts as a logical separator.  <cip>
  <aps>
  x
  </aps></cip>
aps Acts as a logical separator for status and model information. <aps>
  <status>
  <model_results>
</aps>
status The condition of a process or response (such as embossed card, account, freeze, and so on). Pass
model_results Acts as a logical separator between models. <model_results>
  <models>
</model_resultss>
model Acts as a logical separator. Relates to the template used to verify the identity of the card holder data sent to the createAccount end point. <model>
  <model_name>
  <model_version>
  <code>
</model>
model_version Version number for the model used. 1
code In a model run, lists the pass number. Pass 01
text Plain text description of the code value. SSN Matches Address
card_id Integer identifier of the card as found in the raw data file (RDF). Unique identifier for a PAN. 12345
card_number A PAN or 16 digit card number. 1234123412341234
expiry_date Expiration date of the card. 2018-01-01
card_security_code The card verification value (cvv), is a card anti-fraud measure. 123
processing_time The time elapsed in processing the transaction. 0.973
echo A data structure that displays transaction id information. <echo>
  x
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call createVirtualCard and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/createVirtualCard \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'prodId=501'
        
// The following Java code will make a createVirtualCard call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("prodId", "501"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/createVirtualCard"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a createVirtualCard call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'prodId': '501'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/createVirtualCard', data=payload, headers={'response-content-type': 'json'}) print('createVirtualCard response code: ' + r.json()['status_code'])
        
// The following PHP code will make a createVirtualCard call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/createVirtualCard'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'prodId'=>'501'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a createVirtualCard call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/createVirtualCard" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&prodId{5}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "501"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a createVirtualCard call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/createVirtualCard") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "prodId" => "501"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    createVirtualCard() response example
                                            
                                            <?xml version="1.0" encoding="UTF-8"?>
                                            <response>
                                               <status_code>0</status_code>
                                               <status>Success</status>
                                               <system_timestamp>2011-02-01 12:46:08</system_timestamp>
                                               <response_data>
                                                 <new_account>
                                                   <pmt_ref_no>074129972670</pmt_ref_no>
                                                   <product_id>560</product_id>
                                                   <galileo_account_number>935631</galileo_account_number>
                                                   <cip>
                                                     <aps>
                                                       <status>Pass</status>
                                                       <model_results>
                                                         <model>
                                                           <model_name>MODELA</model_name>
                                                           <model_version>1</model_version>
                                                           <code>Pass 01</code>
                                                           <text>SSN Matches Address</text>
                                                         </model>
                                                       </model_results>
                                                     </aps>
                                                   </cip>
                                                   <card_id>12345</card_id>
                                                   <card_number>1234123412341234</card_number>
                                                   <expiry_date>2018-01-01</expiry_date>
                                                   <card_security_code>123</card_security_code>
                                                 </new_account>
                                               </response_data>
                                               <processing_time>0.605</processing_time>
                                               <echo>
                                                 <transaction_id>12345a</transaction_id>
                                                 <provider_transaction_id>77bb</provider_transaction_id>
                                                 <provider_timestamp>2013-02-06 10:10:10</provider_timestamp>
                                               </echo>
                                            </response>
                                                            
Parameters
Status codes
Response
// sendNewCardPin()
With this method the API consumer can request a new card PIN be messaged to a customer via mobile text message. The sendNewCardPin() method does not allow the PIN to be set via API. When the method is called, a new random PIN will be generated and messaged to the mobile phone number configured in the customer's profile.
This is a PCI-compliance sensitive method.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionIdr Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
cardNumberLastFour No Number

4 digits

0789

If PRN is passed as accountNo, this parameter can be used to ensure that the correct card is selected if the cardholder has more than one active card related to their account.
Status codes
Status Code Description
0 Success
2 Invalid parameter(s)
24 Duplicate transaction
503-01 Invalid card Status
503-02 Card not found based on last four digits of card number.
503-03 Invalid product type, no card PIN to set.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
Status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>....</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call sendNewCardPin and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/sendNewCardPin \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228'
        
// The following Java code will make a sendNewCardPin call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/sendNewCardPin"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a sendNewCardPin call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/sendNewCardPin', data=payload, headers={'response-content-type': 'json'}) print('sendNewCardPin response code: ' + r.json()['status_code'])
        
// The following PHP code will make a sendNewCardPin call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/sendNewCardPin'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a sendNewCardPin call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/sendNewCardPin" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a sendNewCardPin call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/sendNewCardPin") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                     sendNewCardPin() response example
                                
                                <?xml version="1.0" encoding="UTF-8"?>
                                <response>
                                   <status_code>0</status_code>
                                   <status>Success</status>
                                   <system_timestamp>2011-02-08 10:54:49</system_timestamp>
                                   <response_data/>
                                   <processing_time>0.23</processing_time>
                                   <echo>
                                     <transaction_id>12345a</transaction_id>
                                     <provider_transaction_id>77bb</provider_transaction_id>
                                     <provider_timestamp>2013-02-06 10:10:10</provider_timestamp>
                                   </echo>
                                </response>
                                                
Parameters
Status codes
Response
// resetCardPinFailCount()
This method can be used to modify the cardholder PIN fail count down to zero and optionally notate the customer account (similar to the CST). The current card PIN fail count and PIN fail date can be retrieved with the getCard() or getAccountCards() method calls.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionIdr Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique product Identifier used for internal Galileo processing and added security) or card_id (integer identifier of the card as found in RDF or getAccountCards()).
cardNumberLastFour No Number

4 digits

0789

If PRN is passed as accountNo, this parameter can be used to ensure that the correct card is selected if the cardholder has more than one active card related to their account.
notate No Boolean

0 or 1

0

0 = false, 1 = true
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
24 Duplicate transaction
545-01 PIN fail count already 0
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
Status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>....</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call resetCardPinFailCount and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/resetCardPinFailCount \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228'
        
// The following Java code will make a resetCardPinFailCount call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/resetCardPinFailCount"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a resetCardPinFailCount call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/resetCardPinFailCount', data=payload, headers={'response-content-type': 'json'}) print('resetCardPinFailCount response code: ' + r.json()['status_code'])
        
// The following PHP code will make a resetCardPinFailCount call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/resetCardPinFailCount'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a resetCardPinFailCount call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/resetCardPinFailCount" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a resetCardPinFailCount call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/resetCardPinFailCount") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    resetCardPinFailCount() response example
                                
                                <?xml version="1.0" encoding="UTF-8"?>
                                <response>
                                   <status_code>0</status_code>
                                   <status>Success</status>
                                   <system_timestamp>2017-08-08 16:12:23</system_timestamp>
                                   <response_data/>
                                   <processing_time>0.815</processing_time>
                                   <echo>
                                     <transaction_id>981079879</transaction_id>
                                     <provider_transaction_id>GAAP test</provider_transaction_id>
                                     <provider_timestamp>2017-08-08 16:11:43</provider_timestamp>
                                   </echo>
                                </response>
                                                
Parameters
Status codes
Response
// getAccessToken()
The getAccessToken() method allows for the API consumer to retrieve an access token relative to the card, account, or customer record. The access token has a configurable seconds to expiry and usage count -- both configuration options are set atthe card program level. The use-case this method was created to support is one where a customer needs to be sent a link to a one time view of a dynamically generated image of a virtual card via the web. The method is meant to be extensible and useful for other use-cases.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionIdr Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique product Identifier used for internal Galileo processing and added security) or card_id (integer identifier of the card as found in RDF, getAccountCards(), and getCard()).
type Yes Integer

1 or 2

2

0=card, 1=account, 2=customer
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
Status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
token In getAccessToken(), this token is used to authenticate a HTTP post for sensitive data, such as PAN or a PIN. 1Bn9ZMojgGy0iuYDphQrJtbtu
UhK8H1YUaMaMGgUwk5fYmrRje
expires In getAccessToken(), the date and time a token expires. 2017-02-01 12:28:00
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call getAccessToken and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/getAccessToken \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228' \ -d 'type=2'
        
// The following Java code will make a getAccessToken call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); params.put("type", "2"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/getAccessToken"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a getAccessToken call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228', 'type': '2'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/getAccessToken', data=payload, headers={'response-content-type': 'json'}) print('getAccessToken response code: ' + r.json()['status_code'])
        
// The following PHP code will make a getAccessToken call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/getAccessToken'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228', 'type'=>'2'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a getAccessToken call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/getAccessToken" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}&type{6}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228", "2"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a getAccessToken call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/getAccessToken") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228", "type" => "2"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
Parameters
Status codes
Response
// commitCardPinChange()
This method allows for the commit or completion of a PIN change request that was staged. The staged PIN change is created by first creating a PIN change key or token (getCardPinChangeKey()) and then using that key as part of a customer initiated HTML form POST to Galileo. Speak to your Account Manager or Implementation Manager for more details.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionIdr Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique product Identifier used for internal Galileo processing and added security) or card_id (integer identifier of the card as found in RDF, getAccountCards(), and getCard()).
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
Success Status The condition of a process or response (such as embossed card, account, freeze, and so on).
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data/>
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call commitCardPinChange and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/commitCardPinChange \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228'
        
// The following Java code will make a commitCardPinChange call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/commitCardPinChange"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a commitCardPinChange call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/commitCardPinChange', data=payload, headers={'response-content-type': 'json'}) print('commitCardPinChange response code: ' + r.json()['status_code'])
        
// The following PHP code will make a commitCardPinChange call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/commitCardPinChange'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a commitCardPinChange call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/commitCardPinChange" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a commitCardPinChange call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/commitCardPinChange") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    commitCardPinChange()  response example
                            
                            <?xml version="1.0" encoding="UTF-8"?>
                            <response>
                               <status_code>0</status_code>
                               <status>Success</status>
                               <system_timestamp>2017-01-30 15:08:01</system_timestamp>
                               <response_data/>
                               <processing_time>0.881</processing_time>
                               <echo>
                                 <transaction_id>681918306</transaction_id>
                                 <provider_transaction_id>GAAP test</provider_transaction_id>
                                 <provider_timestamp>2017-01-30 15:07:56</provider_timestamp>
                               </echo>
                            </response>
                                            
Parameters
Status codes
Response
// getAccessToken()
The getAccessToken() method allows for the API consumer to retrieve an access token relative to the card, account, or customer record. The access token has a configurable seconds to expiry and usage count -- both configuration options are set atthe card program level. The use-case this method was created to support is one where a customer needs to be sent a link to a one time view of a dynamically generated image of a virtual card via the web. The method is meant to be extensible and useful for other use-cases.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionIdr Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique product Identifier used for internal Galileo processing and added security) or card_id (integer identifier of the card as found in RDF, getAccountCards(), and getCard()).
type Yes Integer

1 or 2

2

0=card, 1=account, 2=customer
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
Status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
token In getAccessToken(), this token is used to authenticate a HTTP post for sensitive data, such as PAN or a PIN. 1Bn9ZMojgGy0iuYDphQrJtbtu
UhK8H1YUaMaMGgUwk5fYmrRje
expires In getAccessToken(), the date and time a token expires. 2017-02-01 12:28:00
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call getAccessToken and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/getAccessToken \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228' \ -d 'type=2'
        
// The following Java code will make a getAccessToken call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); params.put("type", "2"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/getAccessToken"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a getAccessToken call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228', 'type': '2'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/getAccessToken', data=payload, headers={'response-content-type': 'json'}) print('getAccessToken response code: ' + r.json()['status_code'])
        
// The following PHP code will make a getAccessToken call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/getAccessToken'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228', 'type'=>'2'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a getAccessToken call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/getAccessToken" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}&type{6}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228", "2"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a getAccessToken call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/getAccessToken") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228", "type" => "2"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    getAccessToken() response example
                                
                                <?xml version="1.0" encoding="UTF-8"?>
                                <response>
                                   <status_code>0</status_code>
                                   <status>Success</status>
                                   <system_timestamp>2017-02-01 11:04:28</system_timestamp>
                                   <response_data>
                                     <token>1Bn9ZMojgGy0iuYDphQrJtbtuUhK8H1YUaMaMGgUwk5fYmrRje</token>
                                     <expires>2017-02-01 12:28:00</expires>
                                   </response_data>
                                   <processing_time>0.445</processing_time>
                                   <echo>
                                     <transaction_id>832507927</transaction_id>
                                     <provider_transaction_id>GAAP test</provider_transaction_id>
                                     <provider_timestamp>2017-02-01 11:01:16</provider_timestamp>
                                   </echo>
                                </response>
                                                
Parameters
Status codes
Response
// createProvisioningRequest()
The createProvisioningRequest() method can be used as part of a multiple step integration to push provision a virtual card to a Apple Wallet. An API integration with Apple will be required to be part of a successful use of this API method. Your account manager can assist directing the developer(s) to the required Apple documentation.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionIdr Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
cert1 Yes String

DER encoded x.509 certificate string

AbCy76wkRpmWWm2k71H...

The first of two certificates returned by Apple in a push provisioning request.
cert2 No String

DER encoded x.509 certificate string

MIIB1jANBgkghiG9w0...

The second of two certificates returned by Apple in a push provisioning request.
nonce No String

8 character nonce value

9c023092

A nonce value as returned by Apple in a push provisioning request.
nonceSignature Yes String

nonce signature value

4082f883ae62....

A nonce signature value as returned by Apple in a push provisioning request.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid Account
24 Duplicate transaction
548-01 Certificate chaining or validation error
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
Status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
encrypted_pass_data An encrypted JSON file containing the sensitive information needed to add a card to Apple Pay. F92C1D45EFF127F92C1D45EFF127F92C1D45EFF127F92C1D45EFF127==
activation_data The request's activation data. MBPAC-1-FK-123456.1--TDEA-8BF291C91F3ED4EF92C1D45EFF127C1F9ABC12348D
ephemeral_public_key A generated key that is combined with a private key. 0499a6f42e83ea4f150a78780ffb562c9cdb9b
7507bc5d28cbfbf8cc3ef0af68b36e60cb10db69127830f7f899492
017089e3b73c83fcf0ebdf2c06b613c3f88b7
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call createProvisioningRequest and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/createProvisioningRequest \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228' \ -d 'cert1=AbCy76wlRpmWW2k71h...' \ -d 'cert2=MIIB1jANBgkghiG9w0...' \ -d 'nonce=9c023092' \ -d 'nonceSignature=4082f883ae62...'
        
// The following Java code will make a createProvisioningRequest call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); params.put("cert1", "AbCy76wlRpmWW2k71h..."); params.put("cert2", "MIIB1jANBgkghiG9w0..."); params.put("nonce", "9c023092"); params.put("nonceSignature", "4082f883ae62..."); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/createProvisioningRequest"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a createProvisioningRequest call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228', 'cert1': 'AbCy76wlRpmWW2k71h...', 'cert2': 'MIIB1jANBgkghiG9w0...', 'nonce': '9c023092', 'nonceSignature': '4082f883ae62...'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/createProvisioningRequest', data=payload, headers={'response-content-type': 'json'}) print('createProvisioningRequest response code: ' + r.json()['status_code'])
        
// The following PHP code will make a createProvisioningRequest call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/createProvisioningRequest'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228', 'cert1'=>'AbCy76wlRpmWW2k71h...', 'cert2'=>'MIIB1jANBgkghiG9w0...', 'nonce'=>'9c023092', 'nonceSignature'=>'4082f883ae62...'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a createProvisioningRequest call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/createProvisioningRequest" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}&cert1{6}&cert2{7}&nonce{8}&nonceSignature{9}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228", "AbCy76wlRpmWW2k71h...", "MIIB1jANBgkghiG9w0...", "9c023092", "4082f883ae62..."); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a createProvisioningRequest call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/createProvisioningRequest") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228", "cert1" => "AbCy76wlRpmWW2k71h...", "cert2" => "MIIB1jANBgkghiG9w0...", "nonce" => "9c023092", "nonceSignature" => "4082f883ae62..."}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    createProvisioningRequest() response example
                                
                                <?xml version="1.0" encoding="UTF-8"?>
                                <response>
                                   <status_code>0</status_code>
                                   <status>Success</status>
                                   <system_timestamp>2015-04-29 10:25:15</system_timestamp>
                                   <response_data>
                                     <encrypted_pass_data>F92C1D45EFF127F92C1D45EFF127F92C1D45EFF127F92C1D45EFF127==</encrypted_pass_data>
                                     <activation_data>MBPAC-1-FK-123456.1--TDEA-8BF291C91F3ED4EF92C1D45EFF127C1F9ABC12348D</activation_data>
                                     <ephemeral_public_key>0499a6f42e83ea4f150a78780ffb562c9cdb9b7507bc5d28cbfbf8cc3ef0af68b36e60cb10db69127830f7f899492017089e3b73c83fcf0ebdf2c06b613c3f88b7</ephemeral_public_key>
                                   </response_data>
                                   <processing_time>0.407</processing_time>
                                   <echo>
                                     <transaction_id>916171485</transaction_id>
                                     <provider_transaction_id>GAAP test</provider_transaction_id>
                                     <provider_timestamp>2015-04-29 10:24:15</provider_timestamp>
                                   </echo>
                                </response>
                                                
Parameters
Status codes
Response
// getCreditSummary()
The getCreditSummary() method returns billing information related to the most previous calculated bill cycle, outstanding balance, and available credit.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
51 Referenced account is not a credit product.
549-01 Invalid credit account
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
available_credit   499.82
outstanding_balance   500.18
billing A data structure that contains billing period information. <billing>
  <period>
    <start_date>2017-12-01</start_date>
    <end_date>2017-12-31</end_date>
  </period>
</billing>
period The period of the credit summary being reported on.    <period>
    <start_date>2017-12-01</start_date>
    <end_date>2017-12-31</end_date>
  </period>
start_date The start date for the credit summary being reported on. 2017-12-01
end_date The end date for the credit summary being reported on. 2017-12-31
payment_due_date The payment due date for the credit summary being reported on. 2018-01-01
minimum_payment The minimum payment for the credit summary being reported on. 35
past_due_amount Any past due amount for the credit summary being reported on. 0
credit_limit A data structure that contains information on the credit limit for the credit summary being reported on. <credit_limit>
  <amount>x</amount>
  <minimum_payment>x<minimum_payment>
  <past_due_amount>x
<past_due_amount>
</credit_limit>
amount The credit limit associated with the customer. 1000
last_changed The date and time fo the last credit limit change. 2017-01-01 07:33:00
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>
   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
echo A data structure that displays transaction id information. <echo>
  <transaction_id>x</transaction_id>
  <provider_transaction_id>x</provider_transaction_id>
<provider_timestamp>x</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. Ve8mEK6jUKulAMy7xYGu
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call getCreditSummary and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/getCreditSummary \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228'
        
// The following Java code will make a getCreditSummary call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/getCreditSummary"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a getCreditSummary call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/getCreditSummary', data=payload, headers={'response-content-type': 'json'}) print('getCreditSummary response code: ' + r.json()['status_code'])
        
// The following PHP code will make a getCreditSummary call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/getCreditSummary'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a getCreditSummary call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/getCreditSummary" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a getCreditSummary call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/getCreditSummary") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    getCreditSummary() response example
                            
                            <?xml version="1.0" encoding="UTF-8"?>
                            <response>
                               <status_code>0</status_code>
                               <status>Success</status>
                               <system_timestamp>2017-12-20 15:15:43</system_timestamp>
                               <response_data>
                                 <available_credit>499.82</available_credit>
                                 <outstanding_balance>500.18</outstanding_balance>
                                 <billing>
                                   <period>
                                     <start_date>2017-12-01</start_date>
                                     <end_date>2017-12-31</end_date>
                                   </period>
                                   <payment_due_date>2018-01-01</payment_due_date>
                                   <minimum_payment>35</minimum_payment>
                                   <past_due_amount>0</past_due_amount>
                                 </billing>
                                 <credit_limit>
                                   <amount>1000</amount>
                                   <last_changed>2017-01-01 07:33:00</last_changed>
                                 </credit_limit>
                               </response_data>
                               <processing_time>0.411</processing_time>
                               <echo>
                                 <transaction_id>310754662</transaction_id>
                                 <provider_transaction_id>GAAP test</provider_transaction_id>
                                 <provider_timestamp>2017-12-20 15:09:10</provider_timestamp>
                               </echo>
                            </response>
                                            
Parameters
Status codes
Response
// setCreditLimit()
This method enables the API consumer to update or modify a customer's defined credit limit.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
amount Yes Amount

Monetary amount greater than 0.

1000

Currency amounts passed as whole or fractional amounts, examples: '100.00', '100', or '100.73'.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
51 Referenced account is not a credit product.
550-01 System error setting credit limit.
-1 Indicates that the application record failed to update or record.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>
   </new_account>
</response_data>
new_credit_limit The amount a credit limit has been set to. 1500
processing_time The time elapsed in processing the transaction. 1.723
echo A data structure that displays transaction id information. <echo>
  <transaction_id>x</transaction_id>
   <provider_transaction_id>x
   </provider_transaction_id>
   <provider_timestamp>x
   </provider_timestamp>
</echo>
transaction_id A number that represents a transaction. Ve8mEK6jUKulAMy7xYGu
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
        
# The following shell script will use cURL to call setCreditLimit and # print the full XML response curl - v https://sandbox-api.gpsrv.com/intserv/4.0/setCreditLimit \ -d 'apiLogin= ' \ -d 'apiTransKey= ' \ -d 'providerId=550' \ -d 'transactionId=40985-random-string-10473' \ -d 'accountNo=074103447228' \ -d 'amount=25.50'
        
// The following Java code will make a setCreditLimit call // and print the XML response. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.util. *; class GalileoAPICall { public static void main(String[] args) { try { Map<String,Object> params = new LinkedHashMap<>(); params.put("apiLogin", " "); params.put("apiTransKey", " "); params.put("providerId", "550"); params.put("transactionId", "40985-random-string-10473"); params.put("accountNo", "074103447228"); params.put("amount", "25.50"); StringBuilder postData = new StringBuilder(); for (Map.Entry<String,Object> param : params.entrySet()) { if (postData.length() != 0) postData.append('&'); postData.append(URLEncoder.encode(param.getKey(), "UTF-8")); postData.append('='); postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8")); } byte[] postDataBytes = postData.toString().getBytes("UTF-8"); URL url = new URL("https://sandbox-api.gpsrv.com/intserv/4.0/setCreditLimit"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length)); conn.setDoOutput(true); conn.getOutputStream().write(postDataBytes); String xmlOutput; Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char)c); } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
        
# The following Python code will make a setCreditLimit call # and print the response status code. import requests payload = {'apiLogin': ' ', 'apiTransKey': ' ', 'providerId': '550', 'transactionId': '40985-random-string-10473', 'accountNo': '074103447228', 'amount': '25.50'} r = requests.post(url='https://sandbox-api.gpsrv.com/intserv/4.0/setCreditLimit', data=payload, headers={'response-content-type': 'json'}) print('setCreditLimit response code: ' + r.json()['status_code'])
        
// The following PHP code will make a setCreditLimit call // and echo the response status code. $endpoint = 'https://sandbox-api.gpsrv.com/intserv/4.0/setCreditLimit'; $params = array('apiLogin'=>' ', 'apiTransKey'=>' ', 'providerId'=>'550', 'transactionId'=>'40985-random-string-10473', 'accountNo'=>'074103447228', 'amount'=>'25.50'); $curl = curl_init(); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); curl_setopt($curl, CURLOPT_URL, $endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($curl); curl_close($curl); $xml = new SimpleXMLElement($result); $statusCode = (string) $xml->status_code; echo "method response status code={$statusCode}";
        
// The following C# code will make a setCreditLimit call // and echo the response status code. using System.IO; using System.Net; using System.Xml; string sEndPoint = "https://sandbox-api.gpsrv.com/intserv/4.0/setCreditLimit" string sAPICall = string.Format("{0}?apiLogin{1}&apiTransKey{2}&providerId{3}&transactionId{4}&accountNo{5}&amount{6}", sEndPoint, " ", " ", "550", "40985-random-string-10473", "074103447228", "25.50"); string sResponse = HttpGet(sAPICall); XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); HttpWebRequest req = WebRequest.Create(sAPICall)as HttpWebRequest; string sResponse = null; using (HttpWebResponse resp = req.GetResponse()as HttpWebResponse) { StreamReader reader = new StreamReader(resp.GetResponseStream()); sResponse = reader.ReadToEnd(); } XmlDocument doc = new XmlDocument(); doc.LoadXml(sResponse); XmlNode xmlAPIResponse = doc.SelectSingleNode("response"); Console.WriteLine(string.Format("{0} response code = {1}", sMethodName, xmlAPIResponse.FirstChild.InnerText));
        
# The following Ruby code will make a setCreditLimit call # and print the response status code. require 'uri' require 'securerandom' require 'nokogiri' uri = URI.parse("https://sandbox-api.gpsrv.com/intserv/4.0/setCreditLimit") http = Net::HTTP.new(uri.host, uri.port) http = Net::HTTP.new(uri.host, uri.port) request.set_form_data({"apiLogin" => " ", "apiTransKey" => " ", "providerId" => "550", "transactionId" => "40985-random-string-10473", "accountNo" => "074103447228", "amount" => "25.50"}) response = http.request(request) xml_doc = Nokogiri::Slop(response.body) puts(xml_doc.response.status_code.content)
                    setCreditLimit() response example
                                
                                <?xml version="1.0" encoding="UTF-8"?>
                                <response>
                                   <status_code>0</status_code>
                                   <status>Success</status>
                                   <system_timestamp>2017-12-20 15:19:07</system_timestamp>
                                   <response_data>
                                     <new_credit_limit>1500</new_credit_limit>
                                   </response_data>
                                   <processing_time>0.421</processing_time>
                                   <echo>
                                     <transaction_id>46495101</transaction_id>
                                     <provider_transaction_id>GAAP test</provider_transaction_id>
                                     <provider_timestamp>2017-12-20 15:18:22</provider_timestamp>
                                   </echo>
                                </response>
                                                
Parameters
Status codes
Response
// getCreditLimitChangeHistory()
Returns a history of credit limit changes for a given customer.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
-1 Indicates that the application record failed to update or record.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>
   </new_account>
</response_data>
total_record_count A data structure that reports the number of records in a transaction. <total_record_count>
  <changes>
    <change>
     <timestamp>x</timestamp>
    <credit_limit_amount>x</credit_limit_amount>
    </change>
  </changes>
</
total_record_count>
changes A data structure that reports changes made to a credit limit. <changes>
  <change>
    <timestamp>x</timestamp>
    <credit_limit_amount>x</credit_limit_amount>

  </change>
</changes>
change A data structure that reports a single change made to a credit limit.   <change>
    <timestamp>x</timestamp>
    <credit_limit_amount>x</credit_limit_amount>

  </change>
timestamp The date and time of a credit limit change. 2018-01-23 15:16:02
credit_limit_amount The credit limit amount for a given customer. 1000
processing_time The time elapsed in processing the transaction. 1.723
echo A data structure that displays transaction id information. <echo>
  <transaction_id>x</transaction_id>
  <provider_transaction_id>x</provider_transaction_id>
<provider_timestamp>x</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. Ve8mEK6jUKulAMy7xYGu
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
Code Snippet
  • Curl
  • Java
  • Python
  • Php
  • C#
  • Ruby
Parameters
Status codes
Response
// createBulkCardOrder()
The createBulkCardOrder() method can be used to initiate a request for a batch of instant issue cards to be created.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
prodId Yes Integer

Integer

501

Product ID
numberOfCards Yes Integer

Positive integer value

1000

Number of cards to be created.
embossWith No String Alphanumeric string up to 20 characters in length. Bob's cards Optional string for the first line emboss on cards that are created.
shipToName Yes String

Alphanumeric string up to 40 characters in length.

Fletch F. Fletch

In-care-of name for use in shipping the bulk card order.
shipToAddress Yes String

Alphanumeric string up to 40 characters in length.

33 Maple Street

Street address bulk order will be shipped to.
shipToCity Yes String

Alphanumeric string up to 20 characters in length.

Salt Lake City

City the bulk order will be shipped to.
shipToStateOrProvince Yes String

Must match established 2 character state or province codes.

UT

State or Province the bulk order will be shipped to.
shipToPostalCode Yes String

Valid postal code

841213333

Postal code where the bulk order will be shipped to.
shipToCountryCode No Number

Three digit country code

840

3 digit ISO numeric UN M49 country code; Example USA=840, Canada=124
location Yes String

Must be a number if type is 0. Must be less than 15 if type is 1.

a455-3483

Unique location identifier. See location types.
locationType Yes Integer

0, 1, or 2

1

  • 0=Galileo Location ID
  • 1=Partner Location ID
  • 2=Don't Validate
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
427-01 Invalid or unrecognized location ID
427-02 Invalid or unauthorized product ID
-1 Indicates that the application record failed to update or return.
Response
Parameters
Status codes
Response
// getBulkCardOrder()
This method is used to get the details of a previous bulk card order request created with the createBulkCardOrder() method.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
orderId Yes Integer

Positive integer value

5068

This value should be the the order ID as returned in the createBulkCardOrder() method.
returnAllCards No Boolean

0 or 1

0

  • Default is false
  • 0=false
  • 1=true
Status codes
Response
Parameters
Status codes
Response
// moveCardInventory()
This method is used to reallocate card inventory to different entities.
Cards can be moved based on several different identifiers. The most commonly used identity is card ID. To use card ID, an API consumer would call getBulkCardOrder() and capture the 'card_id_range_start' and 'card_id_range_end' response values. All or part of this range can be used in the moveCardInventory() method call as the 'rangeStart' and 'rangeEnd' parameter values. To move card inventory by card ID, a value of 'P' would be passed as 'type'.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String 60 characters or less 9845dk-39fdk3fj3-4483483478 A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
prodId Yes Integer

Integer

501

Product ID
location Yes String

Must be a number if type is 0. Must be less than 15 if type is 1.

a455-3483

Unique location identifier. See location types.
locationType Yes Integer

0 or 1

1

0=Galileo Location ID, 1=Partner Location ID
moveToLocation Yes String

Must be a number if type is 0. Must be less than 15 if type is 1.

3

Unique location identifier. See location types.
moveToLocationType Yes Integer

0 or 1

0

0=Galileo Location ID, 1=Partner Location ID
type Yes Integer

Value must be 'P', 'C', 'B', or 'O'

C

Describes the type of inventory move. P=card ID, B=bundle ID, O=box ID, C=case ID.
rangeStart Yes Integer

Positive integer value

100

Start of integer range or if no range, this will be the single type identifier.
rangeEnd No Integer

Positive integer value

200

End of integer range. If null, no range is determined.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
468-01 Invalid location ID
468-02 Invalid move-to location ID
468-03 No card inventory moved.
-1 Indicates that the application record failed to update or return.
Response
Parameters
Status codes
Response
// moveCard()
The moveCard() method is meant to allow the simple location reassignment of one instant issue card. The card can be referenced by PAN, PRN, or Card ID using the accountNo parameter.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number), or PRN (a unique product Identifier used for internal Galileo processing and added security), or card_id (integer identifier of the card as found in verifyInstantIssueCard()).
moveToLocation Yes String

Must be a number if type is 0. Must be less than 15 if type is 1.

3

Unique location identifier. See location types.
moveToLocationType Yes Integer

0 or 1

0

0=Galileo Location ID, 1=Partner Location ID
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
552-01 Invalid instant issue card
552-02 Invalid move-to location ID
552-03 No card inventory moved.
-1 Indicates that the application record failed to update or return.
Response
Parameters
Status codes
Response
// assessFee()
Assesses a fee to an account.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
type Yes String

3 character alphanumeric fee type

2

Fee type must be created and registered within the Galileo platform before use.
transAmount No Amount

Monetary amount greater than 0. 

25.99

Currency amounts passed as whole or fractional amounts, examples: '100.00', '100', or '100.73'. The value for this parameter should be the value of the related transaction. This parameter value is used in the calculation of the fee amount when a percentage fee is configured.
amount No Amount

Monetary amount 0 or greater.

25.50

Currency amounts passed as whole or fractional amounts, examples: '100.00', '100', or '100.73'. This parameter can optionally be used to override the configured fee parameters and pass in the actual fee value the API consumer wishes to be assessed.
verifyOnly No Boolean

0 or 1

0

If a value of '1' is passed, the parameter data will be tested only. No transaction will be committed.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
100 Success (Verify)
410-01 Undefined Fee
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
old_balance The balance of the account before the reversal is processed. 1000
new_balance The balance on the account after the reversal is processed. 999.50
fee_amount Numeric value for the amount of the fee. May not include a decimal value if a whole dollar amount. 550.21
fee_trans_id Galileo generated fee transaction integer ID. 9876541321
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// reverseFee()
Reverse a fee created with the assessFee() method or created elsewhere on the Galileo platform.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String 50 characters or less AbC123-9999 Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String 15 characters or less 4sb62fh6w4h7w34g Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String 60 characters or less 9845dk-39fdk3fj3-4483483478 A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String PAN or PRN 074103447228 Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
feeId No Integer   If reversing a fee created via the API, only the transaction ID that fee was created with is required. The feeId should be passed if reversing a fee created elsewhere on the Galileo platform. The feeId is returned in the getFeeHistory() response.
verifyOnly No Boolean 0 or 1 0 If a value of '1' is passed, the parameter data will be tested only. No transaction will be committed.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
24 Unable to complete reversal -- transaction ID not found.
27 Duplicate transaction
32 Account and transaction details do not match.
100 Success (Verify)
479-01 Fee has already been reversed.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
old_balance The balance of the account before the reversal is processed. 1000
new_balance The balance on the account after the reversal is processed. 999.50
fee_trans_id Galileo generated fee transaction integer ID. 9876541321
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// createAdjustment()
Makes credit or debit adjustments on an account. *Please note that unlike other methods that allow for an alphanumeric string for transactionId, the createAdjustment() method requires an integer value.
Note: A payment created using this method will not show up in a getAccountOverview()call until after several seconds have elapsed (this applies to both createAdjustment() and createPayment()).
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes Integer

Positive integer numeric value required.

9845dk-39fdk3fj3-4483483478

This is the same transactionId as is described in the common parameters section of this document. The transactionId parameter for this method strays from the common definition as it is required to be a 32 byte integer value.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
amount Yes Amount

Monetary amount 0 or greater.

25.50

Currency amounts passed as whole or fractional amounts, examples: '100.00', '100', or '100.73'.
type Yes String

2 character alphanumeric

F

F=Web service adjustment, additional custom configured types available.
debitCreditIndicator Yes String

D or C

D

C=Credit, D=Debit
location No String

Must be a number if type is 0. Must be less than 15 if type is 1.

a455-3483

Unique location identifier. See location types.
locationType No Integer

0, 1, or 2

1

  • 0=Galileo Location ID
  • 1=Partner Location ID
  • 2=Don't Validate
description No String Alphanumeric and punctuation One time payroll load. Transaction description.
verifyOnly No Boolean

0 or 1

0

If a value of '1' is passed, the parameter data will be tested only. No transaction will be committed.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
24 Duplicate transaction
25 Invalid type
100 Success (Verify)
471-01 The transactionId parameter must be an integer value.
471-02 Cardholder not configured for overdraft.
471-03 Cardholder product not configured for overdraft.
471-04 Insufficient overdraft funds.
471-05 Error transferring overdraft funds.
471-06 Cardholder overdraft configuration error.
471-07 Insufficient balance for cascading transaction.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
old_balance The balance on the account before the transaction. 186.6
new_balance The balance on the account after the transaction. 191.6
adjustment_trans_id An id number that identifies an adjustment transaction. 981764
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// reverseAdjustment()
Reverses a credit or debit adjustments on an account.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
verifyOnly No Boolean

0 or 1

0

If a value of '1' is passed, the parameter data will be tested only. No transaction will be committed.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
24 Duplicate transaction
27 Unable to complete reversal -- transaction ID not found.
32 Account and transaction details do not match.
100 Success (Verify)
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
old_balance The balance of the account before the reversal is processed. 1000
new_balance The balance on the account after the reversal is processed. 999.50
adjustment_trans_id An id number that identifies an adjustment transaction. 123456789
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// createPayment()
This method enables the loading of funds to a customer account. The createPayment() method utilizes Galileo's limit and velocity verification engine and will return response information related to any limit or velocity violations.
Load limit and velocity response
In the event of a load limit or velocity violation, the createPayment() method will return a response status code 26 and elements 'limit_error', 'limit_id', and 'limit_response_code' in the 'response_data' section. The 'limit_id' is an integer identifier that is to be used in trouble shooting limit and velocity violation configuration. The 'limit_response_code' values are enumerated below.
Note: A payment created using this method will not show up in a getAccountOverview() call until after several seconds have elapsed (this applies to both createAdjustment() and createPayment()).
Limit response codes
Return code Description
L101 Load amount is at maximum allowed amount, but is less than amount requested.
L201 Load amount is 0.0. Maximum load amount violated.
L301 Load amount is 0.0. No load can be done. Amount loaded for given period already equals or exceeds maximum amount.
L302 Load amount and previous load amount for given period will equal maximum amount but is less than total amount within time period.
L401 Load amount is 0.0. No load can be done. The maximum number of transactions are exceeded.
L501 Load amount is 0.0. No load can be done. Maximum balance has already been reached.
L502 Load amount and previous load amount will equal maximum balance but is less than amount requested.
L601 Load amount is 0.0. No load can be done. Maximum balance has already been reached.
L602 Load amount and previous load amount will equal maximum balance but is less than amount requested.
L603 This is an excluded account balance.
L701 Usage count has already been exceeded.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
amount Yes Amount

Monetary amount 0 or greater.

25.50

Currency amounts passed as whole or fractional amounts, examples: '100.00', '100', or '100.73'.
type Yes String

2 alphanumeric characters

2

Payment types are configurable per client. Contact your account representative to determine which types you have implemented.
description No String Alphanumeric and punctuation One time payroll load. Transaction description.
location No String

Must be a number if type is 0. Must be less than 15 if type is 1.

a455-3483

Unique location identifier. See location types.
locationType No Integer 0, 1, or 2 1
  • 0=Galileo Location ID
  • 1=Partner Location ID
  • 2=Don't Validate
verifyOnly No Boolean 0 or 1 0 If a value of '1' is passed, the parameter data will be tested only. No transaction will be committed.
providerAssessedFee No Number

Monetary amount greater than 0.

2.50

Fee amount assessed by the API consumer. Value passed to Galileo only for informational purposes.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
24 Duplicate transaction
25 Invalid type
26 Load limit violation
100 Success (Verify)
408-01 Success -- partial limit violation.
408-02 Success -- delayed payment.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
old_balance The balance on the account before the transaction. 186.6
new_balance The balance on the account after the transaction. 191.6
fee_amount Numeric amount. Data type can be float or integer depending on if the amount is a whole dollar amount. Example values: '550', '550.21' 0
payment_trans_id Galileo generated card payment or load transaction integer ID. 2181409
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Limit Response Code
Parameters
Status codes
Response
// reversePayment()
Reverses a payment. The transactionId parameter will identify the payment to be reversed.
Note: The account balance must be sufficient to cover the amount of the reversal. This will also assess any corresponding reverse payment fees if applicable to the card program.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
verifyOnly No Boolean

0 or 1

0

If a value of '1' is passed, the parameter data will be tested only. No transaction will be committed.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
24 Duplicate transaction
27 Unable to complete reversal -- transaction ID not found.
32 Account and transaction details do not match.
100 Success (Verify)
411-01 Insufficient balance
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
old_balance The balance of the account before the reversal is processed. 1000
new_balance The balance on the account after the reversal is processed. 999.50
fee_event_id Galileo generated fee transaction integer ID. QCL
fee_reversal_amount The amount of the reversed fee. 0
transaction_id A number that represents a transaction. 12345a
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 77bb
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// updatePayment()
Allows for the updating of the 'hold days' for a pending payment.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
pmtId Yes Integer

Positive integer value

4234888

This parameter value will be the payment ID (pmtId) as returned by getPaymentHistory(). This is the integer value that uniquely identifies a payment on the Galileo system.
holdDays Yes Integer

Integer value of zero or greater

0

The 'hold days' value can be updated to zero or greater. If set to zero, the payment will be posted to the customer balance the next time payments are evaluated to be processed.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
533-01 Payment record not found.
533-02 Payment record status is invalid -- must be in ready to process status (R).
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// createAccountTransfer()
Bundles a load, adjustment, and fee into one API call. Transfers occur between two accounts on a single program. This method can be used to transfer between accounts of separate customers, or between accounts related to the same customer. The sender's PAN or PRN should be passed as the 'accountNo' parameter. Contact the Galileo Processing Internal Operations team to make this method available.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
amount Yes Amount

Monetary amount 0 or greater.

25.50

Currency amounts passed as whole or fractional amounts, examples: '100.00', '100', or '100.73'.
transferToAccountNo Yes String

PAN or PRN

074103447300

Can be either a PAN (the 16 digit card number) or a PRN (a unique 12 digit account identifier).
message No String

Alphanumeric string including punctuation, with a maximum length of 2000 characters.

Thanks again for lunch!

An optional message for the transfer recipient (in situations of a customer to customer transfer).
type No String Three alphanumeric types defined in coordination with Galileo. Note that any codes will be defined through a request to Galileo. Transaction types must be set-up before they pass a value in the type column. You can define templates for different types of transfers using this field. If your cardholders will be doing a lot of account transfers, having type templates makes controlling payments, adjustments, and fees a lot easier.
If you're interested in using type, contact Galileo.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
445-01 The transfer-to account could not be found.
445-02 Invalid transfer-to account--the account is in an incorrect status. Possible causes of this status include; the destination account is not found, or it has a limit violation.
445-03 The transfer-to account product is not authorized.
445-04 Sender velocity check failure.
445-05 Recipient velocity check failure.
445-06 Sender insufficient balance.
445-07 Invalid/unconfigured cross program transfer. When transferring from an account under one program ID to an account with a different program_id, a configuration must be in place to allow such a transfer.
24 Duplicate transaction
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>
   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
old_balance The old balance on the source or destination account. 1000
new_balance The new balance on the source or destination account. 975
adjustment_trans_id The trans ID associated with the adjustment. 1022819
transfer_account_id The account associated with the transfer. 17
sender_fee_amount The fee applied to the C2C transfer. 0
payment_trans_id The transaction ID. 2901282
transfer_to_account The destination of funds. Destination of funds contains old and new values. <transfer_to_account>
  <old_balance>0</old_balance>
  <new_balance>25</new_balance>
</transfer_to_account>
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
Parameters
Status codes
Response
// reverseAccountTransfer()
Reverses a createAccountTransfer() method call. The createAccountTransfer( call to be reversed is identified by the transaction ID. Only successful (response status code '0') createAccountTransfer() calls can be reversed. The sender's PAN or PRN should be passed as the 'accountNo' parameter.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
31 Unknown or unregistered transaction.
496-01 Insufficient balance for reversal.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
old_balance The balance on the account before the transaction posted. 191.6
new_balance The balance on the account after the transaction has posted. 196.6
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// expireAuthorization()
Expire an existing authorization hold on a customer account. An authorization must be in an acceptable status in order to be expired. Acceptable statuses vary by card association integration. The table below relates individual association status requirements.
Acceptable authorization expiration statuses
Association Status(es)
Master Card 'A','C'
Visa 'A'
Star 'A','S'
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo No String

PAN or PRN

12345678

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
authId Yes Integer

Positive integer value

58344373

Integer transaction ID generated by Galileo and retrevied in the getAuthHistory() method call.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
532-01 Card authorization could not be found.
532-02 Card authorization could not be expired.
532-03 System error encountered while attempting to expire authorization.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Acceptable authorization expiration statuses
Parameters
Status codes
Response
// getPendingDeposits()
Get a report of pending ACH deposits including status information.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo No String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
startDate No Date

YYYY-MM-DD

2016-01-01

The beginning date for the date range.
endDate No Date

YYYY-MM-DD

2016-02-01

The end date for the date range; must be greater than or equal to the startDate.
recordCnt No Integer

Positive integer value in the range of 1 and 99999.

100

The maximum number of records to be returned in the method response.
page No Number

Integer value of 1 or greater.

3

The page number to be retrieved in the context of recordset paging.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
pending_deposit_count The number of pending deposits in the response. 2
page The page number to be retrieved in the context of recordset paging. 1
total_record_count Number of records in the accounts list display. 26
number_of_pages Total number of pages in the accounts list display. 13
start_date Start date of the pending deposits data range. 2016-01-01
end_date End date of the pending deposits data range. 2016-01-01
pending_deposits A data structure that contains information on pending deposits. <pending_deposits>
<pending_deposit></pending_deposit>
</pending_deposits>
pending_deposit A data structure that displays incoming ACH related payments that are flagged for review. <pending_deposit>
   <amt></amt>
   <in_ts></in_ts>
   <effective_dt/>
   <name/>
   <xid></xid>
   <prog_id> </prog_id>
   <batch_hdr></batch_hdr>
   <dest_acct_no></dest_acct_no>
   <source_inst_id> </source_inst_id>
   <source_inst_name> </source_inst_name>
   <status> </status>
   <trans_type> </trans_type>
   <addenda_rec> </addenda_rec>
   <categories>
     <category>
       <category_code> </category_code>
       <description> </description>
       <status> </status>
       <ach_source_id/>
     </category>
   </categories>
   <ach_trans_id> </ach_trans_id>
</pending_deposit>
amt A fee or transaction charge. 244
in_ts An initial time and date stamp for the creation of the record. 2011-03-10 06:39:38
effective_dt Attached to an ACH record that specifies when the payment posts. 2014-10-15 00:00:00
name In getPendingDeposits(), the name of the account receiving the flagged deposit. Fredericksons
xid An account ID that can be used instead of the PAN or other restricted information. 1294559
prog_id An ID number unique to a program. 163
batch_hdr A record of a batch of transactions. 5200STATE OF OHIO INCOME TAX REFUNDS
4311334820PPDTAXREFUNDS
0311111103110701041001030000640
dest_acct_no The destination account for a flagged pending deposit. 733101000053
source_inst_id An ID (usually a bank routing number) for the institution that originated the deposit. 041001039
source_inst_name The name of the institution that originated the deposit. STATE OF OHIO
status In getPendingDeposits(), the status of the deposit. U
trans_type Transaction Type. A short, generic transaction category. DE
addenda_rec Supplemental information to identify a deposit. 705TAX02*R-PIT-4231182B*REFUND FOR TAX YEAR
categories A data structure that contains category information. <categories>
<category></category>
</categories>
category In getPendingDeposits, a data structure that contains tax information for a pending deposit. <category>
  <category_code>TAX</category_code>
   <description>Tax (TAX)</description>
   <status>NEW</status>
   <ach_source_id/>
</category>
category_code In getPendingDeposits(), the category the transaction falls within. TAX
description In getPendingDeposits(), a plain text description of a pending deposit. Tax (TAX)
ach_source_id A document or record that supports the transaction. 106
ach_trans_id A unique ID for an ACH transaction. 13234257
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// getDepositHistory()
Get deposit history data for your entire program or related to a specific customer.
Recordset paging
Large data sets can be retrieved using recordset paging. A maximum date range of three years (1095 days) is allowed. When retrieving a large data set, pass the number of records desired (500 per page maximum) as the 'recordCnt' parameter value. Each response will include the total number of records found related to the date range as 'total_record_count'. The number of pages available will be returned as 'number_of_pages'. The current page being returned is communicated simply as 'page'. The API consumer can request the different pages of the recordset by passing the desired page number as the 'page' parameter.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo No String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
startDate Yes Date

YYYY-MM-DD

2016-01-01

The beginning date for the date range.
endDate Yes Date

YYYY-MM-DD

2016-02-01

The end date for the date range; must be greater than or equal to the startDate.
recordCnt No Integer

Positive integer value in the range of 1 and 99999.

100

The maximum number of records to be returned in the method response.
page No Number

Integer value of 1 or greater.

3

The page number to be retrieved in the context of recordset paging.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
deposit_count The number of deposits in the response. 3
page The page number to be retrieved in the context of recordset paging. 1
total_record_count Number of records in the accounts list display. 61
number_of_pages Total number of pages in the accounts list display. 21
start_date The start date of a response. 2018-01-01
end_date The end date of a response. The end date must always be later than the start date, (violations will trigger a bad date range response). 2018-01-02
pending_deposits A data structure that contains information on pending deposits. <pending_deposits>
<pending_deposit></pending_deposit>
</pending_deposits>
pending_deposit A data structure that displays incoming ACH related payments that are flagged for review. <pending_deposit>
   <amt></amt>
   <in_ts></in_ts>
   <effective_dt/>
   <name/>
   <xid></xid>
   <prog_id> </prog_id>
   <batch_hdr></batch_hdr>
   <dest_acct_no></dest_acct_no>
   <source_inst_id> </source_inst_id>
   <source_inst_name> </source_inst_name>
   <status> </status>
   <trans_type> </trans_type>
   <addenda_rec> </addenda_rec>
   <categories>
     <category>
       <category_code> </category_code>
       <description> </description>
       <status> </status>
       <ach_source_id/>
     </category>
   </categories>
   <ach_trans_id> </ach_trans_id>
</pending_deposit>
ach_trans_id A unique ID for an ACH transaction. 13234257
amt A fee or transaction charge. 244
in_ts An initial time and date stamp for the creation of the record. 2011-03-10 06:39:38
effective_dt Attached to an ACH record that specifies when the payment posts. 2014-10-15 00:00:00
name In getPendingDeposits(), the name of the account receiving the flagged deposit. Fredericksons
xid An account ID that can be used instead of the PAN or other restricted information. 1294559
prog_id An ID number unique to a program. 163
batch_hdr A record of a batch of transactions. 5200STATE OF OHIO INCOME TAX REFUNDS 4311334820PPDTAXREFUNDS031
1111103110701041001030000640
dest_acct_no The destination account for a flagged pending deposit. 733101000053
source_inst_id An ID (usually a bank routing number) for the institution that originated the deposit. 041001039
source_inst_name The name of the institution that originated the deposit. STATE OF OHIO
status In getPendingDeposits(), the status of the deposit. U
trans_type Transaction Type. A short, generic transaction category. DE
categories A data structure that contains category information. <categories>
<category></category>
</categories>
category In getPendingDeposits, a data structure that contains tax information for a pending deposit. <category>
  <category_code>TAX</category_code>
   <description>Tax (TAX)</description>
   <status>NEW</status>
   <ach_source_id/>
</category>
category_code In getPendingDeposits(), the category the transaction falls within. TAX
description In getPendingDeposits(), a plain text description of a pending deposit. Tax (TAX)
ach_source_id A document or record that supports the transaction. 106
ach_trans_id A unique ID for an ACH transaction. 13234257
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// modifyPendingDepositStatus()
The modifyPendingDepositStatus() method gives the API consumer the ability to triage direct deposits; accepting and rejecting as needed.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
depositTransactionId Yes Integer

Positive integer value

6844743

Integer value representing the Galileo generated deposit transaction ID.
actionType Yes String

Single character

P

'P' and 'R' (Post and Return). Post is used to post the pending (ACH) deposit, Return is used to return the pending deposit. If 'R' is used for the actionType a return code must also be specified (recCode parameter).
categoryCode Yes String Must be one of the following values: COF, CRN, L, LRG, NAM, or TAX. TAX COF="Questionable IAT Country", CRN="Unauthorized IAT Country", L="Large Xfer Amount >4000", LRG="Large Xfer 4000", NAM="Name miss match", TAX="Tax"
categoryType Yes String Must be one of the following values: A, W, or D. A A=Approve, W=Watch, D=Decline
retCode No String

Must be one of a set of defined values. See the retCode enumeration table below.

R02

See the retCode enumeration table below.
Return code enumeration
Return code description
R01 Insufficient Funds
R20 Non-Transaction Account
R02 Account Closed
R03 No account, Unable to Locate Account
R04 Invald Account Number
R05 Reserved
R06 Returned per ODFI's Request
R07 Authorization Revoked by Customer
R08 Payment Stopped or Stop Payment on Source Document
R09 Uncollected Funds
R10 Customer Advises Not Authorized
R11 Check Truncation Entry Return
R12 Branch Sold to Another DFI
R14 Representative Payee Deceased or Unable
R15 Other Beneficiary or Account Holder Deceased
R16 Account Frozen
R17 File Record Edit Criteria
R21 Invalid Company Identification
R22 Invalid Individual ID Number
R23 Credit Entry Refused by Receiver
R24 Duplicate Entry
R29 Corporate Customer Advises Not Authorized
R31 Permissible Return Entry, CCD and CTX only
R33 Return of XCK Entry
R37 Source Document Presented for Payment
R38 Stop Payment on Source Document
R40 Return of ENR Entry by Federal Government Agency
R41 Invalid Transaction Code, ENR only
R42 Routing Number, Check Digit Error, ENR only
R43 Invalid DFI Account Number, ENR only
R44 Invalid Individual ID No., Identification No.
R45 Invalid Individual Name, Company Name
R46 Invalid Representative Payee Indicator, ENR only
R47 Duplicate Enrollment, ENR only
R50 State Law Affecting RCK Acceptance
R51 Item is Ineligible, Signature Not Genuine, ...
R52 Stop Payment on Item
R53 Item and ACH Entry Presented for Payment
R80 Cross-Border Payment Coding Error
R81 Non-Participant in Cross-Border Program
R82 Invalid Foreign Receiving DFI Identification
R83 Foreign Receiving DFI Unable to Settle
R84 Entry Not Processed by OGO
R61 Misrouted Return
R62 Incorrect Trace Number
R63 Incorrect Dollar Amount
R64 Incorrect Individual Identification
R65 Incorrect Transaction Code
R66 Incorrect Company Identification
R67 Duplicate Return
R68 Untimely Return
R69 Multiple Errors
R70 Permissible Return Entry Not Accepted
R71 Misrouted Dishonored Return
R72 Untimely Dishonored Return
R73 Timely Original Return
R74 Corrected Return
R13 RDFI Not Qualified to Participate
R18 Improper Effective Entry Date
R19 Amount Field Error
R25 Addenda Error
R26 Mandatory Field Error
R27 Trace Number Error
R28 Routing Number Check Digit Error
R30 RDFI Not Participant in Check Truncation Program
R32 RDFI Non-Settlement
R34 Limited Participant DFI
R35 Return of Improper Debit Entry
R36 Return of Improper Credit Entry
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
543-01 Provided depositTransactionId doesn't map to any payment.
543-02 Invalid category type. The valid choices are A=Approve, W=Watch and D=Decline.
543-03 Invalid action type. The valid choices are P=Post and R=Return.
543-04 Transaction is not in a status that can be posted or returned.
543-05 Failed to Post transaction.
543-06 Failed to Return transaction.
543-07 Ret Code should not be used when posting.
543-08 Ret Code is required when returning.
543-09 Invalid Ret Code supplied. Valid Ret Codes: x.
543-10 Payment successfully updated, but was not successfully marked as reviewed. Please contact client support for more details.
543-10 Failed to find transaction by depositTransactionId and or categoryCode. Please confirm both are correct.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
deposit_transaction_id A unique system generated ID number that identifies the deposit. 38754446
action_type 'P' and 'R' (Post and Return). Post = pending (ACH) deposit, Return = return the pending deposit. P
category_type A=Approve, W=Watch, D=Decline A
category_code COF=Questionable IAT Country, CRN=Unauthorized IAT Country, L=Large Xfer Amount >4000, LRG=Large Xfer 4000, NAM=Name miss match, TAX=Tax NAM
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Return code enumeration
Status codes
Response
// createHold()
The createHold() method creates a hold or reserve on an amount of funds for a specific payment and a given amount of time. The createHold() method allows a hold of up to 50,001.00 (as set by the product parameter MXHLD ). Note that createHold() supports remote deposit capture (RDC).
Use createHold() to place a hold on a specific payment, or a hold against an account in general. A payment hold requires a specific amount and a payment ID. An account hold requires the payment type to hold against, and what payment types are allowed on this PID. A THOLD parameter must be setup for them to do a general hold.
Contact the Galileo Technical Operations Center to update MXHLD (MXHLD must be updated to pass the threshold of 25,000.00) or to configure the THOLD parameter for a general account hold.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String 50 characters or less AbC123-9999 Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String 15 characters or less 4sb62fh6w4h7w34g Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String 60 characters or less 9845dk-39fdk3fj3-4483483478 A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String PAN or PRN 074103447228 Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
amount Yes Amount Monetary amount 0 or greater. 25.50 Currency amounts passed as whole or fractional amounts, examples: '100.00', '100', or '100.73'.
expirationDateTime Yes DateTime YYYY-MM-DD HH:MM:SS 2017-01-01 13:00:00 Must be a fully qualified date including the 24 hour format timestamp.
pmtId No Integer Positive integer value 4234888 This parameter value will be the payment ID (pmtId) as returned by getPaymentHistory(). This is the integer value that uniquely identifies a payment on the Galileo system.
description No String Alphanumeric and punctuation One time payroll load. Transaction description.
externalId No String Alphanumeric string up to 60 characters in length. 45348bacd483348 Optional external system ID for a hold.
holdType No String Alphanumeric predefined four character string. AAAB Hold types are pre-configured in coordination with your account manager.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
539-01 Holds are not enabled for this product/program. Please contact client support for more information.
539-02 Provided XID does not map to a valid balance in our system.
539-03 Provided expiration date needs to be in the correct format (YYYY-MM-DD HH:MM:SS) and needs to be in the future.
539-04 Provided payment id is invalid.
539-05 No payment id was provided and the provided account hold type is missing or invalid.
539-06 Amount must be equal to or less than the payment minus any other holds that have already been placed.
539-07 An unknown error occurred while creating the hold. Please contact client support if this error persists.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status_code The status of the response. 0
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
system_timestamp A system generated timestamp. 2011-10-07 10:25:07
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
  x
</response_data>
new_balance The balance on the account after the transaction. 2.79
hold_id The ID associated with the hold. 453434
processing_time The time elapsed in processing the transaction. 0.973
echo A data structure that displays transaction id information. <echo>
  x
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// expireHold()
This method expires a funds hold made with createHold().
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
holdId Yes Integer

Positive integer value

453434

Hold ID as returned by getHoldHistory().
expirationDateTime Yes DateTime

YYYY-MM-DD HH:MM:SS

2017-01-01 13:00:00

Must be a fully qualified date including the 24 hour format timestamp.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
540-01 Provided hold id does not map to an active hold in our system.
540-02 Provided expiration date needs to be in the correct format (YYYY-MM-DD HH:MM:SS) and needs to be in the future. Omit this field if you want to expire the hold immediately.
540-03 An unknown error occurred while creating the hold. Please contact client support if this error persists.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example Value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
hold_id The ID associated with the hold. 11
payment_trans_id Galileo generated card payment or load transaction integer ID. 2181409
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// getHoldHistory()
This method allows you to receive a history of holds created for a specified account.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
-1 Indicates that the application record failed to update or return.
Response
Response Description Example
active_holds Acts as a logical separator for active holds. <active_holds>
  <active_hold>
  <active_hold>
<active_holds>
expired_holds Acts as a logical separator for expired holds. <expired_holds>
  <expired_hold>
  <expired_hold>
<expired_holds>
hold_id A unique ID for the hold to be expired, as returned by getHoldHistory. 11
create_dt The date the hold was created. 2017-08-27 17:11:39
expiry_dt The date the hold will expire. 2018-01-01 00:00:00
source_id A code unique to the source of the activity (such as fees, adjustments, and so on). 2016292
change_dt The date the hold was last modified or created. 2017-08-27 17:11:39
hold_type The type of hold. TH
ext_id An external identifier associated with the hold. 123123123123
dscr The description associated with the hold. test-- some description text
originating_system_id The process that created the hold. API
agent_id The agent that created the hold. n3ejFG-0043
amount The financial sum being held. 50
xid The transaction ID associated with the hold. 250624
expiring_system_id The process that expired the hold. API
expiring_agent_id The agent that expired the hold. n3ejFG-0043
Parameters
Status codes
Response
// getPendingMerchantCredits()
Returns a data set of merchant credits that are pending or in a status of waiting to be processed. A program ID is required to be passed as a parameter value. The data set can be filtered down to a specific account by passing a PAN or PRN as accountNo along with the program ID.
Recordset paging
Large data sets can be retrieved using recordset paging. When retrieving a large data set, pass the number of records desired (500 per page maximum) as the 'recordCnt' parameter value. Each response will include the total number of records found related to the date range as 'total_record_count'. The number of pages available will be returned as 'number_of_pages'. The current page being returned is communicated simply as 'page'. The API consumer can request the different pages of the recordset by passing the desired page number as the 'page' parameter.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
programId Yes Integer

Positive integer value

1032

Program ID number provided by Galileo.
accountNo No String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
recordCnt No Integer

Positive integer value in the range of 1 and 99999.

100

The maximum number of records to be returned in the method response.
page No Number

Integer value of 1 or greater.

3

The page number to be retrieved in the context of recordset paging.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
51 Invalid program ID
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
page The page number retrieved in the context of recordset paging. 2
total_record_count Number of records in the display. 6
number_of_pages Total number of pages in the accounts list display. 3
pending_merchant_credits A data structure that contains information on pending merchant credits. <pending_merchant_credit>
  <settle_id>v-65852700</settle_id>
  <settle_ts>2012-09-18 06:10:31</settle_ts>
  <amount>534.99</amount>
  <description>KMART 7090</description>
  <pmt_ref_no>074126563084</pmt_ref_no>
  <card_id/>
  <first_name>john</first_name>
  <last_name>doe</last_name>
</pending_merchant_credit>
settle_id An ID that has been assigned a transaction that has been settled. v-65852700
settle_ts A time and date stamp for a settled transaction. 2018-09-18 06:10:31
amount In getPendingMerchantCredits(), the amount of a pending merchant credit. 534.99
description In getPendingMerchantCredits(), the description of a pending merchant credit. KMART 7090 JACKSONVILLE NCUS
pmt_ref_no A Galileo generated account number. 074126563084
card_id Integer identifier of the card as found in the raw data file (RDF). Unique identifier for a PAN in combination with the expiration date. 12345
first_name A person's first name as listed on the account. Jane
last_name A person's last name as listed on the account. Jackson
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// updatePendingMerchantCredit()
The updatePendingMerchantCredit() method can be used to post or post/hold a merchant credit. In order to process a merchant credit, a settleId parameter value is required. The settleId parameter value comes from the settle_id data element as returned by the getPendingMerchantCredits() method. Once a merchant credit has been processed via the API call, it is queued for processing on the Galileo system.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
settleId Yes String

/^[a-zA-Z]{1}-[0-9]{1,20}$/

v-43843747

Settle ID as returned by getPendingMerchantCredits().
type Yes Integer

1 or 2

2

1=Post, 2=Post and Hold
programId Yes Integer

Positive integer value

1032

Program ID number provided by Galileo.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
556-01 Merchant credit not found.
556-02 Invalid merchant credit.
-1 Indicates that the application record failed to update or return.
Response
Parameters
Status codes
Response
// getTransHistory()
Returns a list of transactions that occurred during a specified time period. This method can include transactions made on all cards related to the account or only those on the supplied card number/PRN. As a configuration option, transaction filtering can be enabled so that transaction types can be filtered from the method response by the 'act_type' transaction type.
Recordset paging
Large data sets can be retrieved using recordset paging. A maximum date range of three years (1095 days) is allowed. When retrieving a large data set, pass the number of records desired (500 per page maximum) as the 'recordCnt' parameter value. Each response will include the total number of records found related to the date range as 'total_record_count'. The number of pages available will be returned as 'number_of_pages'. The current page being returned is communicated simply as 'page'. The API consumer can request the different pages of the recordset by passing the desired page number as the 'page' parameter.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
startDate Yes Date

YYYY-MM-DD

2016-01-01

The beginning date for the date range.
endDate Yes Date

YYYY-MM-DD

2016-02-01

The end date for the date range; must be greater than or equal to the startDate.
recordCnt No Integer

Positive integer value in the range of 1 and 99999.

100

The maximum number of records to be returned in the method response.
page No Number

Integer value of 1 or greater.

3

The page number to be retrieved in the context of recordset paging.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
23 Bad date range
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status_code The status of the response. 0
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
  <new_account>
  </new_account>
</response_data>
transaction_count The number of transactions listed in the response. 3
page The page number to be retrieved in the context of recordset paging. 1
total_record_count Number of records in the accounts list display. 2
number_of_pages Total number of pages in the accounts list display. 1
start_date Start date of the response. 2010-10-01 00:00:00
end_date The end date of a response. The end date must always be later than the start date, violations will trigger a bad date range response. 2010-11-01 23:59:59
transactions A data element to display meta information for one or more transactions. <transactions>
  <transaction>x</transaction>
</transactions>
transaction A data element to display the information associated with a transaction. <transaction>   <pmt_ref_no>999900034474</pmt_ref_no>
  <act_id>1</act_id>
  <act_type>AD</act_type>
  <post_ts>2017-10-28 08:35:14</post_ts>
  <amt>100.25</amt>
  <details>Adjustment</details>
  <description>Adjustment</description>
  <source_id>1</source_id>
  <bal_id>101</bal_id>
  <prod_id>5094</prod_id>
  <auth_ts>2017-10-28 08:35:14</auth_ts>
  <trans_code>ADF</trans_code>
  <ach_transaction_id/>
  <merchant_id/>
  <formatted_merchant_desc/>
  <terminal_id/>
  <external_trans_id>19681089</external_trans_id>
  <original_auth_id>0</original_auth_id>
  <card_id>0</card_id>
  <network_code/>
  <local_amt/>
  <local_curr_code/>
  <settle_amt/>
  <settle_curr_code/>
  <billing_amt/>
  <billing_curr_code/>
</transaction>
pmt_ref_no A Galileo generated account number. 008103023340
act_id Id number assigned to an account. 44777870
act_type Activity type of the transaction. (See Activity Types in the documentation). FE
post_ts The time stamp of a posted transaction. 2012-09-19 14:04:03
amt A fee or transaction charge. .5
details Information on a transaction or authorization. Adjustment
description Definition of what a transaction was for. Fee
source_id A code unique to the source of the activity (such as fees, adjustments, and so on). 5227662
bal_id Integer-based account number, also known as balance ID. 5757170
prod_id Galileo generated product Id of the account. 207
auth_ts Time stamp of an authorization. 2010-11-01 04:13:25
trans_code The combination of act_type and otype. For instance, if act_type is an adjustment, act_type would be AD, otype could be MC and the value in transcode would be ADMC. FE0401
ach_transaction_id A unique ID for an ACH transaction. 22528
merchant_id A unique number assigned to a merchant account to identify it throughout the course of processing activities. 38438338338339853
formatted_merchant_desc A parsed authorization merchant description. REDBOX *DVD RENTAL, 866-733-2693, IL
terminal_id A unique number assigned to a specific point-of-origination terminal or workstation. 43553434
external_trans_id Non-Galileo id number for a transaction. 483494-4443-455454
original_auth_id The id of the originating authorization. 374634555
card_id Integer identifier of the card as found in the raw data file (RDF). Unique identifier for a PAN. 12345
network_code A code that identifies the card issuer.
V=Visa M=MC D=MC Debit
v
local_amt Amount of the transaction based on local currency. Used when multiple currency codes are in use. 0874
local_curr_code Currency code in use locally. Used when multiple currency codes are in use. 840
settle_amt The amount of a single transaction that has been settled. Required if transaction and settlement currencies are different. Used when multiple currency codes are in use. 1524
settle_curr_code Currency code in use for the settle_amt. Used when multiple currency codes are in use. Required if transaction and settlement currencies are different. 840
billing_amt The billing amount of a transaction. Used when multiple currency codes are in use. 59
billing_curr_code Currency code in use for the billing_amt. Used when multiple currency codes are in use. 840
processing_time The time elapsed in processing the transaction. 1.723
transaction_id A number that represents a transaction. 99367542
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// getPaymentHistory()
Returns a recordset of payment (credits) history to a customer account.
Recordset paging
Large data sets can be retrieved using recordset paging. A maximum date range of three years (1095 days) is allowed. When retrieving a large data set, pass the number of records desired (500 per page maximum) as the 'recordCnt' parameter value. Each response will include the total number of records found related to the date range as 'total_record_count'. The number of pages available will be returned as 'number_of_pages'. The current page being returned is communicated simply as 'page'. The API consumer can request the different pages of the recordset by passing the desired page number as the 'page' parameter.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
startDate Yes Date

YYYY-MM-DD

2016-01-01

The beginning date for the date range.
endDate Yes Date

YYYY-MM-DD

2016-02-01

The end date for the date range; must be greater than or equal to the startDate.
includeRelated No Boolean 0 or 1 0 Default is true; 0=false, 1=true
recordCnt No Integer

Positive integer value in the range of 1 and 99999.

100

The maximum number of records to be returned in the method response.
page No Number

Integer value of 1 or greater.

3

The page number to be retrieved in the context of recordset paging.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account.
23 Bad date range
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
transaction_count The number of transactions listed in the response. 3
page The page number to be retrieved in the context of recordset paging. 1
total_record_count Number of records in the accounts list display. 45
number_of_pages Total number of pages in the accounts list display. 15
start_date The start date of a response. 2018-01-01
end_date The end date of a response. The end date must always be later than the start date, (violations will trigger a bad date range response). 2018-01-02
payments The total amount of payments in this result. <payments>
<payment>
x
</payment
</payments>
payment In getPaymentHistory(), a data structure that contains payment information. <payment>
  <pmt_id>2900491</pmt_id>
  <details>0</details>
  <amount>50</amount>
  <timestamp>2012-09-19 16:09:11</timestamp>
  <source_id>15509778</source_id>
  <ach_transaction_id/>
  <external_trans_id/>
  <hold_days>0</hold_days>
  <status>P</status>
  <status_description>Processed</status_description>
</payment>
payments In getPaymentHistory(), a data structure that contains information on one or more payments. <payments>
<payment>
x
</payment
</payments>
pmt_id ID assigned to the specific payment. 2900491
details Description of a transaction or authorization. ECOMMERCE PAYMENTS
amount An amount on a transaction or authorization. 50
timestamp The date and time a change was made. 2018-09-19 16:09:11
source_id A code unique to the source of the activity (such as fees, adjustments, and so on). 15509778
ach_transaction_id A unique ID for an ACH transaction. 22528
external_trans_id Non-Galileo id number for a transaction. 483494-4443-455454
hold_days The number of days on a hold. SPecific to a pending payment, usually due to load limt violations. 0
status In getPaymentHistory(), the status of the payment. P
status_description In getPaymentHistory(), a spelled-out status of the payment. Processed
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// getAllTransHistory()
Get transaction history including authorization holds for a given customer. Summaries of transaction types for the respective date range are included. Running balance is calculated per transaction record. Returns the same data set as is available in the Galileo CST All Transactions page.
Recordset paging
Large data sets can be retrieved using recordset paging. A maximum date range of three years (1095 days) is allowed. When retrieving a large data set, pass the number of records desired (500 per page maximum) as the 'recordCnt' parameter value. Each response will include the total number of records found related to the date range as 'total_record_count'. The number of pages available will be returned as 'number_of_pages'. The current page being returned is communicated simply as 'page'. The API consumer can request the different pages of the recordset by passing the desired page number as the 'page' parameter.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String 50 characters or less AbC123-9999 Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String 15 characters or less 4sb62fh6w4h7w34g Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String 60 characters or less 9845dk-39fdk3fj3-4483483478 A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String PAN or PRN 074103447228 Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
startDate Yes Date YYYY-MM-DD 2016-01-01 The beginning date for the date range.
endDate Yes Date YYYY-MM-DD 2016-02-01 The end date for the date range; must be greater than or equal to the startDate.
recordCnt No Integer Positive integer value in the range of 1 and 99999. 100 The maximum number of records to be returned in the method response.
page No Number Integer value of 1 or greater. 3 The page number to be retrieved in the context of recordset paging.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid Account
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status_code The status of the response. 0
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
  <new_account>x</new_account>
</response_data>
transaction_count The number of transactions listed in the response. 3
page The page number to be retrieved in the context of recordset paging. 1
total_record_count Number of records in the accounts list display. 2
number_of_pages Total number of pages in the accounts list display. 1
start_date Start date of the response. 2010-10-01 00:00:00
end_date The end date of a response. The end date must always be later than the start date, violations will trigger a bad date range response. 2010-11-01 23:59:59
sums A data structure that contains unsettled, settled, adjustment, fee, and payment information. <sums>
  <unsettled>x</unsettled>
  <settled>x</settled>
  <adjustment>x</adjustment>
  <fee>x</fee>
  <payment>x</payment>
</sums>
unsettled The total sum of transactions that have not been settled yet. -16.99
settled The ammunt of a singled transaction that has been settled. 0
adjustment The amount a sums total has changed. 0
fee An ammount charged for a service. 0
transactions A data element to display meta information for one or more transactions. <transactions>
  <transaction>x</transaction>
</transactions>
transaction A data element to display the information associated with a transaction. <transaction>
  x
</transaction>
is_savings Flags the transaction as being made to a savings account or not. 1
deny_code A code associated with a reason that a transaction is denied. 51 (2 or 3 alphanumeric)
disputable Flag to allow a disputation on a deny. 0
details Information on a transaction or authorization. IVR Fee
act_type Activity type of the transaction. AD
act_type_description Human readable description of an activity type. Visa Authorization
post_ts The time stamp of a posted transaction. 2012-09-19 14:04:03
amt A fee or transaction charge. .5
source_id A code unique to the source of the activity (such as fees, adjustments, and so on). 51010054
type A classification of the activity sub-type. PM
type_description The meaning of the type code. Visa Authorization
trans_code The combination of act_type and otype. For instance, if act_type is an adjustment, act_type would be AD, otype could be MC and the value in transcode would be 'ADMC'. VIA
arn Id for a trans used with some association networks. Long random string
merchant_id A unique number assigned to a merchant location or terminal to identify that merchant with the association. 38438338338339853
external_trans_id Non-Galileo id number for a transaction. 19681089
calculated_balance The balance on an account after a transaction is complete. 210.25
ach_transaction_id A unique ID for an ACH transaction. 22528
auth_ts Time stamp of an authorization. 2010-11-01 04:13:25
prior_id Represents the original auth_id and indicates that the current item is a reversal. Integer type value. 5094
card_id Integer identifier of the card as found in the raw data file (RDF). Unique identifier for a PAN. 12345
formatted_merchant_desc A parsed authorization merchant description. REDBOX *DVD RENTAL, 866-733-2693, IL
network_code A code that identifies the card issuer. V=Visa M=MC D=MC Debit v
pmt_ref_no A Galileo generated account number. 008103023340
mcc_code The merchant category code associated with the transaction. 4331
local_amt Amount of the transaction based on local currency. Used when multiple currency codes are in use. 0874
local_curr_code Currency code in use locally. Used when multiple currency codes are in use. 840
settle_amt The amount of a single transaction that has been settled. Required if transaction and settlement currencies are different. Used when multiple currency codes are in use. 1524
settle_curr_code Currency code in use for the settle_amt. Used when multiple currency codes are in use. Required if transaction and settlement currencies are different. 840
billing_amt The billing amount of a transaction. Used when multiple currency codes are in use. 59
billing_curr_code Currency code in use for the billing_amt. Used when multiple currency codes are in use. 840
pmt_ref_no A Galileo generated account number. 008103023340
act_id Id number assigned to an account. 44777870
act_type Activity type of the transaction. (See Activity Types in the documentation). FE
post_ts The time stamp of a posted transaction. 2012-09-19 14:04:03
amt A fee or transaction charge. .5
details Information on a transaction or authorization. Adjustment
description Definition of what a transaction was for. Fee
source_id A code unique to the source of the activity (such as fees, adjustments, and so on). 5227662
bal_id Integer-based account number, also known as balance ID. 5757170
prod_id Galileo generated product Id of the account. 207
trans_code The combination of act_type and otype. For instance, if act_type is an adjustment, act_type would be AD, otype could be MC and the value in transcode would be ADMC. FE0401
merchant_id A unique number assigned to a merchant account to identify it throughout the course of processing activities. 38438338338339853
terminal_id A unique number assigned to a specific point-of-origination terminal or workstation. 43553434
external_trans_id Non-Galileo id number for a transaction. 483494-4443-455454
original_auth_id The id of the originating authorization. 374634555
processing_time The time elapsed in processing the transaction. 1.723
transaction_id A number that represents a transaction. 99367542
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// verifySufficientFunds()
Checks the transaction amount to verify sufficient funds are on hand to cover the amount.
Parameters
Parameter Required Data type Pattern Notes Example value
apiLogin Yes String 50 characters or less Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address. AbC123-9999
apiTransKey Yes String 15 characters or less Web Service Password as provided and authenticated by Galileo for the requesting IP Address. 4sb62fh6w4h7w34g
providerId Yes Integer 10 digits or less Galileo issued unique Provider identifier. 9999
transactionId Yes String 60 characters or less A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction. 9845dk-39fdk3fj3-4483483478
providerTimestamp No Date 19 characters Format: YYYY-MM-DD HH:MM:SS API consumers should use this parameter if they wish to store the related timestamp in their system for reporting and troubleshooting purposes. 2017-05-01 13:01:01
agentId Conditional String 2-30 character alphanumeric Agent identity for use in transaction reporting and tracking. 43493-ABDS-3333
agentFirstName Conditional String 2-30 character alphanumeric string Agent first name for use in transaction reporting and tracking. Ed
agentLastName Conditional String 2-30 character alphanumeric string Agent last name for use in transaction reporting and tracking. Harley
accountNo Yes String PAN or PRN Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier). 074103447228
transactionAmount Yes Decimal 9 digits Actual transacted amount. 34.09
currentTransactionSum Yes Decimal 9 digits The accumulated values during the current transaction. 88.09
Status codes
Status Code description
0 Success. You have successfully created an account.
2 Invalid parameter(s). Bad parameters were sent with the transaction.
12 Invalid customer account.
-1 Indicates that the application record failed to update or return. Contact Galileo for troubleshooting.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
approved Associated with verifySufficentFunds, Y or N flag Y
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// addSecureMessage()
Creates a new Secure Message entry.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
msgSubject Yes String Alphanumeric string including punctuation; maximum 255 characters account login help pls Secure message subject
msgText Yes String

Alphanumeric string including punctuation; maximum 4000 characters

Please help me recover my password.

Secure message body text
parentMsgId No Integer

Positive integer value

483383

The msgId of the original cardholder message that you wish to respond to.
locale No String

Accepted values = "en_US", "es_US", "fr_CA", and "en_CA"

en_US

Sets customer language preference. Default is "en_US".
Status codes
Status Code description
0 Success
2 Invalid parameters
12 Invalid customer account
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
msg_id The ID assigned to a secure message. 984181
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// getSecureMessages()
Returns a list of secure messages that occurred during a specified time period.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

 

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
startDate Yes Date

YYYY-MM-DD

2016-01-01

The beginning date for the date range.
endDate Yes Date

YYYY-MM-DD

2016-02-01

The end date for the date range; must be greater than or equal to the startDate.
Status codes
Status Code description
0 Success
2 Invalid parameters
12 Invalid customer account
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code

 

The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
conversations A data structure that contains information on one or more secure messaging conversations. <conversations>
  <conversation>
  x
  </conversation>
</conversations>
conversation A data structure that contains the information associated with a secure message. <conversation>
  <msg_id>984181</msg_id>
  <msg_subject>Account</msg_subject>
  <msg_dt>2011-10-07 10:25:07</msg_dt>
  <status>R</status>
  <response_dt>2011-10-07 12:22:22</response_dt>
  <locale>en_US</locale>
  <msg_text>Dude</msg_text>
  <replies>
   <reply>
   <msg_id>984182</msg_id>
   <msg_subject>RE: Account</msg_subject>
   <msg_dt>2011-10-07 12:22:22</msg_dt>    <status>N</status>
   <cs_agent>jsmith</cs_agent>
   <locale>en_US</locale>
   <msg_text>My Message</msg_text>
  </reply>
  </replies>
</conversation>
msg_id The msgId of the retrieved cardholder message. 984181
msg_subject The subject of a secure message. Account
msg_dt The date a secure message was received. 2018-10-07 10:25:07
status The read status of a secure message. R
response_dt The date of a response to the secure message. 2018-10-07 12:22:22
locale Language code in use locally. en_US
msg_text The content of a secure message. April 10 is the last occurrence.
replies A data structure that contains information on one or more secure message replies. <reply>
  X
</reply>
reply A data structure that contains the content of a reply to a secure message. <reply>
  <msg_id>984182</msg_id>
  <msg_subject>RE: Account</msg_subject>
  <msg_dt>2011-10-07 12:22:22</msg_dt>
  <status>N</status>
  <cs_agent>jsmith</cs_agent>
  <locale>en_US</locale>
  <msg_text>My Message</msg_text>
</reply>
cs_agent The originator of a reply to a secure message. jsmith
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// createLocation()
This method creates a new store location, associates a provider specific ID, and nests it below a parent store. createLocation() requires an initial parent location to be set up via Galileo Processing Internal Operations team. This is then passed with the call (required value).
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
name Yes String

Alphanumeric string up to 85 characters in length.

ABC Store #5

The name of the location.
address1 Yes String

Maximum length -- 40 characters. Cannot be a P.O. box.

33 Maple Street

Cardholder's address line 1
address2 No String

Maximum length of 30 characters.

#4B

Cardholder's address line 2
city Yes String

Letters and spaces, maximum length 20 characters.

Salt Lake City

Cardholder's city
state Yes String

Valid 2 character state abbreviation.

UT

Cardholder's state
postalCode Yes String

12345 or 12345-1234 (US), K1A-1A1 (CA)

84121

Cardholder's postal code (zip code)
countryCode No Number

Three digit country code.

840

Three digit ISO numeric UN M49 country code; Example USA=840, Canada=124.
countryCode2 No Number

Three digit country code.

840

Three digit ISO numeric UN M49 country code; Example USA=840, Canada=124.
phone No Integer

10 digit phone number

8013656060

Phone number to route outbound calls to. If passed, this number will supersede any account related phone numbers.
parentLocation Yes String

Must be a number if type is 0; Must be less than 15 characters if type is 1.

5

Unique location identifier; see location types.
parentLocationType Yes Integer

0 or 1

0

0=Galileo Location ID, 1=Partner Location ID
providerSpecifiedId No String

Alphanumeric string up to 15 characters in length.

abc-123

The provider specified ID is the partner or program identity for a location -- referenced as location type 1.
creditLimit   Float

Numbers with decimal place.

10000.00

The credit limit to set for this location. This parameter works in conjunction with the cycleInvoice parameter.
cycleInvoice No Integer

1-28

6

If cycleType is weekly, the value must be a day of the week with 1 meaning Sunday. If cycleType is monthly, the value must be a day of the month from 1 to 28. If daily, the value is to be 1.
cycleType No String

Date; daily, weekly, or monthly.

Weekly

The type of time period. This parameter works in conjunction with the cycleInvoice parameter.
centralBillFlag No Integer

0 or 1

1

Determines the central billing node.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
506-01 Invalid location ID
-1 Indicates that the application record failed to update or return.
506-2 Invalid invoice value. (The number passed in cycleInvoice did not work with the chosen cycleType).
Response
Response Code description Example
Location The numerical value assigned to the location. 6
processing_time The time elapsed in processing the transaction. 0.407
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). GAAP test
status The status of the response in human readable form. Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
transaction_id A number that represents the transaction. 916171485
Parameters
Status codes
Response
// modifyLocation()
With this method the API consumer can update or modify key data elements related to the location. Only required parameters and parameters to be modified must be provided. Parameters that are not being modified can be left blank. The location and locationType parameters are used to identify the location to be modified.
Nullifying Data Elements
The following modifyLocation parameters allow for the value 'null' to passed: name, address1, address2, city, phone, and providerSpecifiedId. When passing the string 'null' as the value for any of the above parameters, the respective account data element will be updated to a value of null.
Parameters
Parameter Required Data type Pattern Notes Example value
apiLogin Yes String 50 characters or less Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address. AbC123-9999
apiTransKey Yes String 15 characters or less Web Service Password as provided and authenticated by Galileo for the requesting IP Address. 4sb62fh6w4h7w34g
providerId Yes Integer 10 digits or less Galileo issued unique Provider identifier. 9999
transactionId Yes String 60 characters or less A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction. 9845dk-39fdk3fj3-4483483478
location Yes String Must be a number if type is 0. Must be less than 15 if type is 1. Unique location identifier. See location types. a455-3483
locationType Yes Integer 0, 1, or 2
  • 0=Galileo Location ID
  • 1=Partner Location ID
  • 2=Don't Validate
1
name N String Alphanumberic string up to 22 characters. The name of the location. ABC Store #5
address1 No String Maximum length -- 40 characters. Cannot be a P.O. Box. Cardholder's address line 1 33 Maple Street
address2 No String Maximum length of 30 characters. Cardholder's address line 2 #4B
city No String Letters and spaces, maximum length 20 characters. Cardholder's city Salt Lake City
state No String Valid 2 character state abbreviation. Cardholder's state UT
postalCode No String 12345 or 12345-1234 (US), K1A-1A1 (CA) Cardholder's postal code (zip code) 84121
countryCode No Number Three digit country code. Three digit ISO numeric UN M49 country code; Example USA=840, Canada=124. 840
countryCode2 No Number Three digit country code Three digit ISO numeric UN M49 country code; Example USA=840, Canada=124. 840
phone No Integer 10 digit phone number Phone number to route outbound calls to. If passed, this number will supersede any account related phone numbers. 8013656060
providerSpecifiedId N String Alphanumeric string up to 15 characters. The provider specified ID is the partner or program identity for a location (referenced as location type 1). abc-123
creditLimit No Float Numbers with decimal place. The credit limit to set for this location. This parameter works in conjunction with the cycleInvoice parameter. 10000.00
cycleInvoice No Integer 1-28 If cycleType is weekly, the value must be a day of the week with 1 meaning Sunday. If cycleType is monthly, the value must be a day of the month from 1 to 28. If daily, the value is to be 1. 14
cycleType No String Date; daily, weekly, or monthly. The type of time period. This parameter works in conjunction with the cycleInvoice parameter. Weekly
centralBillFlag No Integer 0 or 1 Determines the central billing node. 1
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
-1 Indicates that the application record failed to update or return.
508-01 Invalid invoice value. The number passed in cycleInvoice did not work with the chosen cycleType.
508-02 Invalid cycleStart. (The number passed in cycleStart did not work with the chosen cycleType).
Response
Response Description Example
centralBillFlag Indicates a central corporate credit aggregate billing location. Allows one centralized billing location for all invoice records attached to the location. Works in conjunction with the cycleInvoice parameter. 1
creditLimit The credit limit for this location. Works in conjunction with the cycleInvoice parameter. 5000.00
cycleInvoice If cycleType is weekly, the value must be a day of the week with 0 meaning Sunday. If cycleType is monthly, the value must be a day of the month from 1 to 28. If daily, the value is to be 1. 15
cycleType The type of time period. Works in conjunction with the cycleInvoice parameter. Monthly
location The numerical value assigned to the location. 6
processing_time The time elapsed in processing the transaction. 0.407
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2018-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). GAAP test
response_data A structure for the response data. It can be empty but usually will contain information. .
status A status response in human readable form. Success
status_code The status of the response. 0
system_timestamp A system generated timestamp 2011-02-02 11:11:12
transaction_id A number that represents the transaction. 916171485
Parameters
Status codes
Response
// getLocations()
This method can be used to retrieve a recordset of locations based on search criteria. Locations can be searched by location ID, location name (or partial), and location street address (or partial).
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
searchCriteria Yes String

Alphanumeric

5544

String with search criteria related to search type specified with searchCriteriaType.
searchCriteriaType Yes Integer

Positive integer value

1

Allowable search criteria type values: 1=location ID, 2=location name (or partial), 3=location street address (or partial)
cycleInvoice No Integer

1-28

6

If cycleType is weekly, the value must be a day of the week with 1 meaning Sunday. If cycleType is monthly, the value must be a day of the month from 1 to 28. If daily, the value is to be 1.
cycleStart No Integer

0-28

6

If cycleStart is weekly: Value must be a day of the week with:
0=Sunday
1=Monday
2=Tuesday
3=Wednesday
4=Thursday
5=Friday
6=Saturday
Monthly: the value must be a day of the month from 1 to 28.
Daily: the value must be 1.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
507-01 No locations found matching search criteria.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
centralBillFlag Indicates a central corporate credit aggregate billing location. Allows one centralized billing location for all invoice records attached to the location. This parameter works in conjunction with the cycleInvoice parameter. DDD
creditLimit The credit limit for this location. This response works in conjunction with the cycleInvoice parameter. 5000.00
cycleInvoice If cycleType is weekly, the value must be a day of the week with 0 meaning Sunday. If cycleType is monthly, the value must be a day of the month from 1 to 28. If daily, the value is to be 1. 15
cycleType The type of time period. This parameter works in conjunction with the cycleInvoice parameter. Monthly
location_id The numerical value assigned to the location. 6
processing_time The time elapsed in processing the transaction. 0.407
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2018-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). GAAP test
status A status response in human readable form. Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2018-02-02 11:11:12
transaction_id A number that represents the transaction 916171485
Parameters
Status codes
Response
// getProductInfo()
The getProductInfo() method can be used to search already defined card products and retrieve some of the essential related production configurations.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String 50 characters or less AbC123-9999 Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String 15 characters or less 4sb62fh6w4h7w34g Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String 60 characters or less 9845dk-39fdk3fj3-4483483478 A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
searchCriteria Yes String Alphanumeric 5544 String with search criteria related to search type specified with searchCriteriaType.
searchCriteriaType Yes Integer Positive integer value 1 Allowable searchCriteriaType values: 1=Product ID, 2=Product description (or partial)
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
509-01 No products found matching search criteria.
-1 Indicates that the application record failed to update or return.
Response
Parameters
Status codes
Response
// createProductFromTemplate()
The createProductFromTemplate() method allows the API consumer to create a card product on the Galileo Platform. As the method name implies, products are created based on a template or a product in a known state the the consumer wants a duplicate of. Products created with this method are not instantly available for use -- products created are staged for internal processes to run and finalize the completion in the Galileo Platform production environment. Refer to your Account Manager or Galileo Operations for more specific timing expectations.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
prodId Yes Integer

Integer

501

Product ID
prodDscr Yes String

Alphanumeric string up to 40 characters in length.

Red personalized card

Description of the new product being created.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
-1 Indicates that the application record failed to update or return.
Response
Parameters
Status codes
Response
// getReportingInfo()
getReportingInfo() reports the following basic information for a product. This data is reported from within a date range.
  • New cards issued.
  • Active cards.
  • Amount of funds that have been loaded.
  • Amount of funds that have been spent.
Parameters
Parameter Required Data type Pattern Notes Example value
prodId Y integer integer The ID of the product to gather data on. 501
startDate Y date YYYY-MM-DD The beginning of the date range to gather data within. 2017-01-20
endDate Y date YYYY-MM-DD The end of the date range to gather data within. 2018-04-11
Status codes
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
  <new_account>x</new_account>
</response_data>
start_date The start date of the items being reported on. 2018-10-01
end_date The end date of the items being reported on. 2018-10-15
prodId Galileo generated product Id of the account. 560
new_cards New cards issued during a date range. 314
active_cards Total of active cards for a date range. 123456
funds_loaded_amt A sum of funds loaded onto cards over a data range. 336527
funds_spent_amt A sum of funds spend over a data range. 834597
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. x
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Response
Parameters
Status codes
Response
// createIvrCall()
Creates an IVR call entry.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String 50 characters or less AbC123-9999 Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
callType Yes String

Alphanumeric ID predefined by Galileo

CPIN

The only currently accepted value is 'CPIN'.
callParams Yes JSON Valid JSON string {"panLastFour":"1234", "passCode":"0123", "expiryDate":"2011-01-01"} JSON encoded array of call parameters. Example: {"panLastFour":"1234", "passCode":"0123", "expiryDate":"2011- 01-01"}
phone No Integer

10 digit phone number

8013656060

Phone number to route outbound calls to. If passed, this number will supersede any account related phone numbers.
Status codes
Status Code description
0 Success
12 Invalid customer account
465-01 Unknown IVR call type
465-02

Invalid parameters

passed in 'callParams'.

465-03 Customer has no registered phone numbers.
465-04 Error queuing calls.
465-05 Internal configuration error
-1 Indicates that the application record failed to update or return.
Response
Response Description Example Value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
call_id An ID code assigned to the call. 15
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// getIvrCallStatus()
Gets the IVR call status of outbound IVR calls, usually associated with non-PCI compliant PIN setting.
Parameters
Parameter Required Data type Pattern Notes Example value
apiLogin Yes String 50 characters or less Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address. AbC123-9999
apiTransKey Yes String 15 characters or less Web Service Password as provided and authenticated by Galileo for the requesting IP Address. 4sb62fh6w4h7w34g
providerId Yes Integer 10 digits or less Galileo issued unique Provider identifier. 9999
transactionId Yes String 60 characters or less A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction. 9845dk-39fdk3fj3-4483483478
accountNo Yes String PAN or PRN Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier). 074103447228
callId Yes Integer Valid integer value This will be the call_id as returned in the createIvrCall() method response. 48347823
Status codes
Status Code description
0 Success
12 Invalid customer account.
466-01 No call request found related to the callId and account.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
call_id An ID code assigned to the call. 15
status A code for the status of the response. 0
status_desc Description of the status. Success
max_attempts The maximum amount of attempted outbound calls allowed. 5
attempt_count The number of attempted calls. 3
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// getBillers()
Get record set of billers configured for a given customer account.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
found In getBillers(), the total number of billers found. 2
billers A data structure that contains information for one or more billers. <billers>
  <biller>
  X
  </biller>
<billers>
biller A data structure that contains information on a biller. <biller>
  <biller_id>2969</biller_id>
  <nickname>Jim Bob Construction</nickname>
  <name>Jim Bob Construction</name>
  <account_number>6015665115651</account_number>
  <type>P</type>
  <address_1>33 asdf</address_1>
  <address_2/>
  <city>Salt Lake City</city>
  <state_province>UT</state_province>
  <postal_code>84037-</postal_code>
  <phone>8016556688</phone>
</biller>
biller_id A code assigned to the biller. 2982
nickname A nickname used to identify a biller entity. Jim Bob Construction
name A name used to identify a biller entity. Jim Bob Construction
account_number inGetBillers(), the account number of the biller entity. 6015665115651
type In getBillers(), the type of biller entity. P
address_1 Street and residence number on the account. 1234 North 678 East
address_2 Additional address information on the account. #2
city City for address information. Salt Lake City
state_province State for address information. UT
postal_code A postal code for the address information. 84037
phone The main phone number on the account. 8016556688
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// searchBillerDirectory()
Search for electronic biller matches in the Remote Payment and Presentment Service (RPPS) database. When passing a biller name ('billerName') and account number ('billerAccountNo'), the searchBillerDirectory() API method will attempt to find matches based on biller account number masks and the biller name. The returned RPPS biller ID ('rpps_biller_id') is used when calling the addRppsBiller() method call.
The searchBillerDirectory() method includes account number masking data for partners to consume and display to customers.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
billerAccountNo No String

Alphanumeric string including hyphens and spaces.

3333223323455555

Must be valid biller account number. When applicable, the account number is validated against a biller-supplied mask.
billerName Yes String

Alphanumeric string of up to 128 characters.

My Landlord

Biller's name
billerState Yes String

2 character state or province abbreviation

UT

Biller's state or province abbreviation
Status codes
Status Code description
0 Success
421-01 No billers found matching the search criteria.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2018-02-02 11:11:12
name In a response_data element, identifies the name associated with id statement in the element. Acme, Inc.
transaction_id A number that represents a transaction. Ve8mEK6jUKulAMy7xYGu
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2018-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
processing_time The time elapsed in processing the transaction. 1.723
billers A data structure for holding biller(s) information. <billers>
   <biller>
   <rpps_biller_id>
   <biller_name>
   <biller_address1/>
   <biller_address2/>
   <biller_city/>
   <biller_state/>
   <biller_zip/>
   </biller_name>
   </rpps_biller_id>
   </biller>
</billers>
biller Contains information fields for a single biller. <biller>
  <rpps_biller_id>
  <biller_name>
  <biller_address1/>
  <biller_address2/>
  <biller_city/>
  <biller_state/>
  <biller_zip/>
  </biller_name>
  </rpps_biller_id> </biller>
rpps_biller_id Remote Payment and Presentment Service provider ID. 0404030214
biller_address1 Street and residence number on the account. 1234 North 678 East
biller_address2 Additional address information on the account. #9
biller_city City for address information. Calgary
biller_state State for address information. AZ
biller_name Name of the biller. Comcast - Sandy 3
biller_zip Zip code of the biller. 84121
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// addRppsBiller()
Enables the API consumer to create Remote Payment and Presentment Service (RPPS) biller registrations for a respective customer.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
rppsBillerId Yes String

Numeric string of 10 characters.

0000001234

Must be a valid Biller ID from the RPPS directory. The rppsBillerId must be zero padded and be 10 characters long. Example rpps biller ID 1234 would be formatted '0000001234'.
billerAccountNo No String Alphanumeric string including hyphens and spaces. 3333223323455555 Must be valid biller account number. When applicable, the account number is validated against a biller-supplied mask.
Status codes
Status Code description
0 Success
12 Invalid customer account.
485-01 Invalid RPPS Biller ID.
485-02 Customer already has this biller.
485-03 Submitted account number does not match the associated biller mask.
-1 Indicates that the application record failed to update or return.
Response
Parameters
Status codes
Response
// addPaperBiller()
Enables the API consumer to create a custom paper biller for a cardholder.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.

providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
billerAccountNo Yes String

Alphanumeric string including hyphens and spaces.

3333223323455555

Must be valid biller account number. When applicable, the account number is validated against a biller-supplied mask.
billerName Yes String

Alphanumeric string of up to 50 characters. (Punctuation disallowed).

My Landlord

Biller's name
billerAddress1 Yes String

Alphanumeric string up to 80 characters in length. "!" character not allowed.

33 Maple Street

Biller's address

billerAddress2 No String

Alphanumeric string up to 80 characters in length. "!" character not allowed.

Suite 400

Biller's address -- additional details

billerCity Yes String

Alphanumeric string of up to 60 characters in length

Salt Lake City

Biller's city

billerState Yes String

2 character state or province abbreviation

UT

Biller's state or province abbreviation

billerZip Yes String

12345 or 12345-1234 (US), K1A-1A1 (CA)

84121

Biller's postal (zip) code

billerPhone No Number

Valid 10 digit phone number

8013656060

Biller's contact phone

Status codes
Status Code description
0 Success
12 Invalid customer account
487-01 Duplicate biller account number
-1 Indicates that the application record failed to update or return.
Response
Response Description Example
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
biller_id Positive integer value of a customer configured biller. Biller IDs are retrieved using the getBillers() method. 37323
name In a response_data element, identifies the name associated with id statement in the element. Acme, Inc.
transaction_id A number that represents a transaction. Ve8mEK6jUKulAMy7xYGu
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
Parameters
Status codes
Response
// removeBiller()
Allows for removing a Remote Payment and Presentment Service (RPPS) or paper biller.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
billerId Yes Integer

Positive integer value

37323

Positive integer value of a customer configured biller. Biller IDs are retrieved using the getBillers() method.
Status codes
Status Code description
0 Success
12 Invalid customer account
486-01 Biller not found.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status_code The status of the response. 0
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
system_timestamp A system generated timestamp. 2011-10-07 10:25:07
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
  x
</response_data>
processing_time The time elapsed in processing the transaction. 0.973
echo A data structure that displays transaction id information. <echo>
  x
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// createBillPayment()
Create a bill payment transaction related to an existing billing registration.
Parameters
Parameter Required Data type Pattern Notes Example value
apiLogin Yes String 50 characters or less Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address. AbC123-9999
apiTransKey Yes String 15 characters or less Web Service Password as provided and authenticated by Galileo for the requesting IP Address. 4sb62fh6w4h7w34g
providerId Yes Integer 10 digits or less Galileo issued unique Provider identifier. 9999
transactionId Yes String 60 characters or less A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction. 9845dk-39fdk3fj3-4483483478
accountNo Yes String PAN or PRN Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier). 074103447228
amount Yes Amount Monetary amount 0 or greater. Currency amounts passed as whole or fractional amounts, examples: '100.00', '100', or '100.73'. 25.50
billerId Yes Integer Positive integer value Positive integer value of a customer configured biller. Biller IDs are retrieved using the getBillers() method. 37323
processDate No Date YYYY-MM-DD Date in the future to process the payment. 2016-01-01
memo No String Alphanumeric including punctuation characters; up to 50 characters in length. Character string to be printed in the memo fields of printed paper checks. For baby sitting
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account.
24 Duplicate transaction
433-01 Unknown biller
433-02 Invalid payment date.
433-03 Invalid amount
433-04 Transaction amount exceeds configured maximum bill payment amount.
433-05 Transaction amount plus fee exceeds customer available balance.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
billpay_transaction_id An ID assigned to a bill payment transaction. 4251
old_balance The balance of the account before the payment is processed. 1796.08
new_balance The balance on the account after the payment is processed. 1786.08
process_date The date the payment was processed. 2018-02-28
fee_amount The fee amount assessed for this bill payment record. .45
maximum_amount In createBillPayment(), a dollar limit on each bill-pay transaction. 250
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// cancelBillPayment()
Cancel a bill payment transaction.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
billpayTransactionId Yes Integer Positive integer value 3433443 This is the billpay_transaction_id XML element as returned by both the createBillPayment() and getBillPaymentHistory().
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account.
435-01 Bill pay transaction could not be found.
435-02 Bill pay transaction not in a reversible state.
24 Duplicate transaction
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
billpay_transaction_id An ID assigned to a bill payment transaction. 4256
old_balance The balance of the account before the payment is canceled. 1753.51
new_balance The balance of the account after the payment is canceled. 1766.08
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// getBillPayHistory()
Get a record set of customer billpayment transaction history.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
startDate Yes Date

YYYY-MM-DD

2016-01-01

The beginning date for the date range.
endDate Yes Date

YYYY-MM-DD

2016-02-01

The end date for the date range; must be greater than or equal to the startDate.
includeRelated No

Boolean

0 or 1

0

Default is true; 0=false, 1=true
recordCnt No Integer Positive integer value in the range of 1 and 99999. 100 The maximum number of records to be returned in the method response.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
found In getBillPayHistory(), the total number of bill payments found. 2
bill_payments A data structure that contains information on one or more bill payments. <bill_payment>
  x
</bill_payment>
bill_payment A data structure that displays information on a bill payment. <bill_payment>
  <pmt_ref_no>155200002741</pmt_ref_no>
  <billpay_transaction_id>566303</billpay_transaction_id>
  <amount>30</amount>
  <process_date>2014-11-28 00:00:00</process_date>
  <biller_id>226555</biller_id>
  <name>Rocky Mountain Power</name>
  <nickname>Rocky Mountain Power</nickname>
  <status>C</status>
  <type>P</type>
  <external_trans_id/>
  <printed_date>2017-06-07 11:32:55</printed_date>
  <cleared_date>2017-06-12 15:18:01</cleared_date>
</bill_payment>
pmt_ref_no A Galileo generated account number. 155200002741
billpay_transaction_id An ID assigned to a bill payment transaction. 566303
amount An amount on a transaction or authorization. 30
process_date The date the payment was processed. 2018-11-28 00:00:00
biller_id Positive integer value of a customer configured biller. Biller IDs are retrieved using the getBillers() method. 226555
name In getBillPayHistory(), the name of the biller. Rocky Mountain Power
nickname A nickname used to identify a biller entity. Rocky Mountain Power
status In getBillPayHistory(), the status of the payment. C
type In getBillPayHistory(), the type of biller entity. P
external_trans_id Non-Galileo id number for a transaction. 483494-4443-455454
printed_date The date the bill payment was sent. 2018-06-07 11:32:55
cleared_date The date the bill payment cleared the bank. 2017-06-12 15:18:01
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// getAchAccounts()
Get record set of ACH accounts related to a customer account.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
-1 Indicates that the application record failed to update or return.
Response
Response Description Example Value
status_code The status of the response. 0
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
system_timestamp A system generated timestamp. 2011-10-07 10:25:07
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   x
</response_data>
found In getAchAccounts(), the total number of ACH accounts found. 2
ach_accounts A data structure that contains information on multiple ACH accounts. <ach_accounts>
   <ach_account>X</ach_account>
</ach_accounts>
ach_account A data structure that contains information on an individual ACH account. <ach_accounts>
   <ach_account>
      <ach_account_id>x</ach_account_id>
      <status>x</status>
      <routing_no>x</routing_no>
      <account_no>x</account_no>
      <type>C</type>
</ach_account>
<ach_account_id> A unique ID for an ACH account. 13836
status In getAchAccounts(), the status of the record being reported on. See ACH Statuses in the Enumerations section. N
routing_no In the ACH, a number used to associate a transaction with an institution. 124002971
account_no In the ACH, a number used to associate a transaction with an account. 1137083253
type In the ACH, the type of record being displayed. C
name In the ACH, the name of the record being displayed. Test2
processing_time The time elapsed in processing the transaction. 0.973
echo A data structure that displays transaction id information. <echo>
   x
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response
// addAchAccount()
Add an ACH account to a customer profile. The ACH account can be used in other methods like createAchTransaction().
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
name Yes String

Alphanumeric string up to 22 characters in length.

my checking account

The name of the ACH account. The customer would potentially see this name in the cardholder web application. This name is for the customer's convenience.
type Yes String

Must be 'C', 'S', or 'M'

C

Describes the type of account that is being transferred to. C=Checking, S=Savings, M=Money Market
achAccountNo Yes Number

Numeric string of up to 22 characters in length.

4483434234348

Numeric bank account number.
achRoutingNo Yes Number

Numeric 9 digit routing number including check digit.

483292838

Standard ACH routing number.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account.
-1 Indicates that the application record failed to update or return.
Response
Parameters
Status codes
Response
// modifyAchAccount()
Modify an existing customer ACH account. The routing (achRoutingNo) and account (achAccountNo) numbers can be submitted more than once on the same program, as long as the information is not on the same XID (account identifier).
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
achAccountId Yes Integer

Positive integer value

354656

Numeric identifier for ACH accounts. This identifier is returned in both the createAchAccount() and getAchAccounts() methods.
name Yes String

Alphanumeric string up to 22 characters in length.

my checking account

The name of the ACH account. The customer would potentially see this name in the cardholder web application. This name is for the customer's convenience.
type No String

Must be 'C', 'S', or 'M'

C

Describes the type of account that is being transferred to.
  • C=Checking
  • S=Savings
  • M=Money Market
achAccountNo No Number

Numeric string of up to 22 characters in length.

4483434234348

Numeric bank account number.
achRoutingNo No Number

Numeric 9 digit routing number including check digit.

483292838

Standard ACH routing number.
location No String

Must be a number if type is 0. Must be less than 15 if type is 1.

a455-3483

Unique location identifier. See location types.
locationType No Integer

0, 1, or 2

0

0=Galileo location ID

1=Partner location ID

2=Do not validate

Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
424-01 ACH account not found.
424-02 ACH account already exists.
-1 Indicates that the application record failed to update or return.
Response
Parameters
Status codes
Response
// removeAchAccount()
Remove an existing customer ACH account.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
achAccountId Yes Integer

Positive integer value

354656

Numeric identifier for ACH accounts. This identifier is returned in both the createAchAccount() and getAchAccounts() methods.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
492-01 ACH account not found.
492-02 ACH account has already been deleted.
-1 Indicates that the application record failed to update or return.
Response
Parameters
Status codes
Response
// createAchTransaction()
Initiate an ACH transfer from a customer account to a pre-defined bank account. The pre-defined bank account could be added via the createAchAccount() end point.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fkk3fj3-483357

Unique transaction identifier (generated by provider). There are rare circumstances where allowed characters are more limited. Refer to individual method definitions for any variances.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
achAccountId Yes Integer

Positive integer value

354656

Numeric identifier for ACH accounts. This identifier is returned in both the createAchAccount() and getAchAccounts() methods.
amount Yes Amount

Monetary amount 0 or greater.

25.50

Currency amounts passed as whole or fractional amounts, examples: '100.00', '100', or '100.73'.
description No String

Alphanumeric and punctuation

One time payroll load.

Optional description of the ACH transfer. 30 characters or less.
debitCreditIndicator Yes String

D or C

D

If no value is passed the default value of 'D' for a debit transaction is assumed. C=Credit, D=Debit
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
413-01 ACH account not found.
413-02 Insufficient balance
24 Duplicate transaction
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status A status response in human readable form. Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
  <balance></balance>
  <ach_transaction_id>
  </ach_transaction_id>
</response_data>
balance The amount of money in a savings or checking account. 5.59
ach_trans_id A unique ID for a ACH transaction. 22528
processing_time The time elapsed in processing the transaction. 1.723
echo Displays transaction id information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. Ve8mEK6jUKulAMy7xYGu
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
Parameters
Status codes
Response
// cancelAchTransaction()
Cancel an ACH transfer created with the createAchTransaction() method.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
achTransactionId Yes Integer

Positive integer value

34890348

Numeric transaction identifier for ACH transactions. This identifier is returned in both the createAchTransaction() and getAchTransHistory() methods.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
431-01 ACH transaction not found
431-02 ACH transaction in error status
431-03 ACH transaction already canceled
431-04 ACH transaction can not be canceled.
-1 Indicates that the application record failed to update or return.
Response
Parameters
Status codes
Response
// getAchTransHistory()
Retrieve the ACH transfer history for a customer account.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
startDate Yes Date

YYYY-MM-DD

2016-01-01

The beginning date for the date range.
endDate Yes Date

YYYY-MM-DD

2016-02-01

The end date for the date range; must be greater than or equal to the startDate.
includeRelated No Boolean

0 or 1

0

Default is true; 0=false, 1=true
recordCnt No Integer

Positive integer value in the range of 1 and 99999.

100

The maximum number of records to be returned in the method response.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
12 Invalid customer account
23 Bad date range
-1 Indicates that the application record failed to update or return.
Response
Parameters
Status codes
Response
// modifyPurchasingCard()
Get record set of ACH accounts related to a customer account.The modifyPurchasingCard() method allows the API consumer to perform the following functions on a card account designated for purchasing:
  • The modifyPurchasingCard() method allows the API consumer to perform the following functions on a card account designated for purchasing:
  • Change the store ID the purchasing card account is assigned to (for tracking purposes). See the 'Location Management' section of this document for help creating locations or getting a current recordset of locations.
  • Modify what merchants the purchasing card can be used with. A CSV list of authorization IDs is passed as the 'newApprovedMerchantAuthIds' parameter value. The merchant ID / merchant description and acquirer ID are retrieved from those example authorizations and used as examples. The card account is updated to only allow transactions from those merchants.

Note that the modifyPurchasingCard() method can also be used to retrieve the current configuration for a purchasing card account. To get the current configuration without any modifications, call the method without passing newProdId, newStoreId, or newApprovedMerchantAuthIds parameters. Use the modifyHowToIdentifyMerchants() method as specified in this document to modify whether the merchant ID or merchant description will be used for merchant validation at the time of the authorization transaction.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
newProdId No Integer

Integer

4444

Galileo product Id of the new account being created.
newStoreId No Integer

Positive integer value

463445

Must be an existing store ID. See the methods defined in "Location Management" for help in creating and getting a current recordset of defined locations.
newApprovedMerchantAuthIds No String

CSV list of integer authorization IDs

58348,473374,5843757,584357

The getAuthHistory() method can be used to get a recordset of authorizations.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
510-01 Provided comma separated list of merchants to authorize by ID is invalid.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example
status_code The status of the response. 0
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
system_timestamp A system generated timestamp. 2018-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
  <new_account>
  </new_account>
</response_data>
prod_id Galileo generated number which identifies the Product assigned to the account. 207
store_id Integer value used for tracking the location (store, entity, etc...) where the customer was acquired. 1
approved_merchants A data structure that contains a number of merchants. <approved_merchants>
  <approved_merchant> 
   <merch_id>x</merch_id>
   <auth_ud>x</auth_id>
   x...
  <approved_merchant>
</approved_merchants>
approved_merchant A data structure to hold merchant information. <approved_merchant>
  <merch_id>x</merch_id>
  <auth_ud>x</auth_id>
  x...
</approved_merchant>
merch_id An integer that identifies a merchant. 000004169570993
auth_id Number assigned to an authorization. 37464470
merch_desc A parsed merchant description. HERTZ RENT A CAR OKLAHOMA CITYOKUS
total_trans Number of transactions with the listed merchant 1
network A code that identifies the card issuer. V=Visa M=MC D=MC Debit V
other_id An ID used to identify the merchant. 000004169570993
isapproved A flag for if Galileo Processing has approved the transaction or not. Y
how_to_identify_merchants Specifies whether the merchant ID or merchant description will be used for validating a merchant restriction on a purchasing card. merch_id
processing_time The time elapsed in processing the transaction. 1.723
transaction_id A number that represents a transaction. Ve8mEK6jUKulAMy7xYGu
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2018-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
Parameters
Status codes
Response
// modifyHowToIdentifyMerchants()
The modifyHowToIdentifyMerchants() method allows the API consumer to specify whether the merchant ID or merchant description will be used for when validating a merchant restriction on a purchasing card. This setting is active at the product level -- the product ID of the product to be modified has to be passed as a parameter value.
Note that this method can be used also to retrieve the current merchant identifying configuration -- to get the current configuration, call the method without an 'identityType' parameter value.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
prodId Yes Integer

Integer

501

Product ID
identityType No String

Value must be 'merch_desc' or 'merch_id'.

merch_id

'merch_desc'=Merchant Description, 'merch_id'=Merchant ID
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
516-01 Provided new way to identify is invalid.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
prod_id Galileo generated product ID of the account. 999
identity_type Specify a merchant ID or a merchant description for validating a merchant restriction on a purchasing card. merch_id
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>
   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
echo A data structure that displays transaction id information. <echo>
  <transaction_id>x</transaction_id>
  <provider_transaction_id>x</provider_transaction_id>
<provider_timestamp>x</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. Ve8mEK6jUKulAMy7xYGu
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
Parameters
Status codes
Response
// getSweepOff()
With the getSweepOff() API method the API consumer can retrieve the current daily account sweep configuration for a given customer.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

74103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
Status codes
Response Code description
0 Success
2 Invalid parameter(s)
523-01 Sweep off parameters not set for this account.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
sweep_off_end_date The date set for an account to be swept of funds. 2018-10-01
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>
   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
echo A data structure that displays transaction id information. <echo>
  <transaction_id>x</transaction_id>
  <provider_transaction_id>x</provider_transaction_id>
<provider_timestamp>x</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. Ve8mEK6jUKulAMy7xYGu
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
Parameters
Status codes
Response
// setSweepOff()
With the setSweepOff() API method the API consumer can enable daily account sweep for a given customer account.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
sweepOffEndDate Yes Date

YYYY-MM-DD

2016-01-01

The sweepOffEndDate specifies the last date that a daily sweep should be performed.
Status codes
Response Code description
0 Success
2 Invalid parameter(s)
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
sweep_off_end_date The date set to sweep funds from the account. 2018-10-01
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>
   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
echo A data structure that displays transaction id information. <echo>
  <transaction_id>x</transaction_id>
  <provider_transaction_id>x</provider_transaction_id>
<provider_timestamp>x</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. Ve8mEK6jUKulAMy7xYGu
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
Parameters
Status codes
Response
// getTopUp()
The getTopUp() API method allows the API consumer to get the current top up process configuration for a specific customer account.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
524-01 Top up parameters not set for this account.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
amount The amount set for reloading a purchasing card. 5000
top_up_end_date The date the 'top up' process ends. 2018-10-01
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>
   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
echo A data structure that displays transaction id information. <echo>
  <transaction_id>x</transaction_id>
  <provider_transaction_id>x</provider_transaction_id>
<provider_timestamp>x</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. Ve8mEK6jUKulAMy7xYGu
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
Parameters
Status codes
Response
// setTopUp()
The setTopUp() API method allows configuration to be set for a daily 'top up' to reload purchasing cards. The amount and date to end the top up process can be set with the amount and topUpEndDate parameters respectively.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
amount Yes Amount

Monetary amount greater than 0.

25.50

Currency amounts passed as whole or fractional amounts, examples: '100.00', '100', or '100.73'.
topUpEndDate Yes Date

YYYY-MM-DD 2016-01-

01

Specifies the last date that a daily top up should be performed.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
top_up_end_date The date the 'top up' process ends. 2018-10-01
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>
   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
echo A data structure that displays transaction id information. <echo>
  <transaction_id>x</transaction_id>
  <provider_transaction_id>x</provider_transaction_id>
<provider_timestamp>x</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. Ve8mEK6jUKulAMy7xYGu
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
Parameters
Status codes
Response
// createFbEnrollement()
The createFbEnrollment() method allows the API consumer to initiate the process of enabling an account holder to receive US Federal Benefit funds via ACH deposit to their account. The createFbEnrollment() method takes the data inputted and queues a batch file record that will be sent (typically daily) to the Fed for processing and enrollment.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
location Yes String

Must be a number if type is 0. Must be less than 15 if type is 1.

a455-3483

Unique location identifier. See location types.
locationType Yes Integer

0, 1, or 2

1

  • 0=Galileo Location ID
  • 1=Partner Location ID
  • 2=Don't Validate
recipientType Yes Integer

0 or 1

1

0=Cardholder, 1=Beneficiary; Describes whether the customer referenced by 'accountNo' is the direct recipient or a beneficiary.
firstName Yes String

2-30 characters; letters, spaces, numbers, and some punctuation:
, . ? @ & ! # ' ~ * - ; +.

Ed

Cardholder's first name
lastName Yes String

30 characters; letters, spaces, numbers, and some punctuation:
, . ? @ & ! # ' ~ * - ; +.

Harley

Cardholder's last name
ssn Yes Number

Numeric 9 digit Social Security Number

123456789

The Social Security Number of the individual receiving the benefit disbursement.
agencyType Yes String

See the agency type table in the Enumerations.

SOCIAL SECURITY

One of several defined agency types.
alerts No Boolean

1 or 0

1

Designates whether or not alerts should be sent regarding the enrollment process.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
526-01 Card number not found.
526-02 Invalid agencyType
526-03 The cardholder's identy must first be verified before enrolling in Federal Benefits.
525-04 This product is not configured for Federal Benefits enrollment.
525-05 Cardholder has already enrolled in this benefit type with SSN.
525-06 Error occurred with the enrollment.
525-07 Invalid recipientType.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
fbe_status_id Identifies a unique federal benefits enrollment record. 23443
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>
   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
echo A data structure that displays transaction id information. <echo>
  <transaction_id>x</transaction_id>
  <provider_transaction_id>x</provider_transaction_id>
<provider_timestamp>x</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. Ve8mEK6jUKulAMy7xYGu
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
Parameters
Status codes
Response
// updateFbEnrollment()
With this method an existing Federal Benefits enrollment can be amended in order to resubmit (resubmitFbEnrollment() method).
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
fbeStatusId Yes Integer

Integer value as returned by getFbEnrollments().

38437

The ID parameter value references the Federal Benefits enrollment to be updated.
recipientType Yes Integer

0 or 1

1

0=Cardholder, 1=Beneficiary; Describes whether the customer referenced by 'accountNo' is the direct recipient or a beneficiary.
firstName Yes String

2-30 characters; letters, spaces, numbers, and some punctuation:
, . ? @ & ! # ' ~ * - ; +.

Ed

Cardholder's first name
lastName Yes String

30 characters; letters, spaces, numbers, and some punctuation:
, . ? @ & ! # ' ~ * - ; +.

Harley

Cardholder's last name
ssn Yes Number

Numeric 9 digit Social Security Number

123456789

The Social Security Number of the individual receiving the benefit disbursement.
agencyType Yes String

See the agency type table in the Enumerations.

SOCIAL SECURITY

One of several defined agency types.
status Yes String

Single character alphanumeric status value (see 'Enumerations' section).

B

Defines the state of the Federal Benefits enrollment.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
528-01 Enrollment not found.
528-02 Invalid agencyType
528-03 Invalid status
528-06 Error saving data.
528-07 Invalid recipientType
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>
   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
echo A data structure that displays transaction id information. <echo>
  <transaction_id>x</transaction_id>
  <provider_transaction_id>x</provider_transaction_id>
<provider_timestamp>x</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. Ve8mEK6jUKulAMy7xYGu
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
Parameters
Status codes
Response
// getFbEnrollments()
With this method a data set containing information regarding Federal Benefit enrollments of varied statuses can be retrieved for a given customer account.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
recipientType Yes Integer

0 or 1

1

0=Cardholder, 1=Beneficiary; Describes whether the customer referenced by 'accountNo' is the direct recipient or a beneficiary.
firstName Yes String

2-30 characters; letters, spaces, numbers, and some punctuation:
, . ? @ & ! # ' ~ * - ; +.

Ed

Cardholder's first name
lastName Yes String

30 characters; letters, spaces, numbers, and some punctuation:
, . ? @ & ! # ' ~ * - ; +.

Harley

Cardholder's last name
ssn Yes Number

Numeric 9 digit Social Security Number

123456789

The Social Security Number of the individual receiving the benefit disbursement.
agencyType Yes String

See the agency type table in the Enumerations. S

OCIAL SECURITY

One of several defined agency types.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
529-01 Enrollment not found.
529-02 Invalid agencyType
529-03 Cardholder is already enrolled with this SSN in this benefit type.
529-04 Failed to resubmit enrollment.
529-05 Invalid recipientType
-1 Indicates that the application record failed to update or return.
Response
Parameters
Status codes
Response
// resubmitFbEnrollment()
The resubmitFbEnrollment() method enables the API consumer to submit an already submitted Federal Benefit enrollment for processing again. Enrollment parameters like name and SSN can be modified as part of the resubmittal.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String

50 characters or less

AbC123-9999

Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String

15 characters or less

4sb62fh6w4h7w34g

Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer

10 digits or less

9999

Galileo issued unique Provider identifier.
transactionId Yes String

60 characters or less

9845dk-39fdk3fj3-4483483478

A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String

PAN or PRN

074103447228

Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
recipientType Yes Integer

0 or 1

1

0=Cardholder, 1=Beneficiary; Describes whether the customer referenced by 'accountNo' is the direct recipient or a beneficiary.
firstName Yes String

2-30 characters; letters, spaces, numbers, and some punctuation:
, . ? @ & ! # ' ~ * - ; +.

Ed

Cardholder's first name
lastName Yes String

30 characters; letters, spaces, numbers, and some punctuation:
, . ? @ & ! # ' ~ * - ; +.

Harley

Cardholder's last name
ssn Yes Number

Numeric 9 digit Social Security Number

123456789

The Social Security Number of the individual receiving the benefit disbursement.
agencyType Yes String

See the agency type table in the Enumerations.

SOCIAL SECURITY

One of several defined agency types.
Status codes
Status Code description
0 Success
2 Invalid parameter(s)
529-01 Enrollment not found.
529-02 Invalid agencyType
529-03 Cardholder is already enrolled with this SSN in this benefit type.
529-04 Failed to resubmit enrollment.
529-05 Invalid recipientType
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>
   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
echo A data structure that displays transaction id information. <echo>
  <transaction_id>x</transaction_id>
  <provider_transaction_id>x</provider_transaction_id>
<provider_timestamp>x</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. Ve8mEK6jUKulAMy7xYGu
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
Parameters
Status codes
Response
// ping()
The ping method performs no function on the Galileo platform other than confirming API connectivity and permissions. A couple of example scenarios where the ping method would be useful are the following:
A test method for access from an automated monitoring service.
An innocuous method that can be called while integrating with the API in order to confirm assumptions, validate access, etc.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String 50 characters or less AbC123-9999 Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String 15 characters or less 4sb62fh6w4h7w34g Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999

Galileo issued unique Provider identifier.
transactionId Yes String 60 characters or less 9845dk-39fdk3fj3-4483483478 A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
Status codes
Status Code description
0 Success
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>
   </new_account>
</response_data>
processing_time The time elapsed in processing the transaction. 1.723
echo Displays transaction id information.  
transaction_id A number that represents a transaction. Ve8mEK6jUKulAMy7xYGu
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
Parameters
Status codes
Response
// createSimulatedCardAuth()
This method allows for the simulation of card authorization. The createSimulatedCardAuth() method cannot be used in the production environment. Upon completing a successful call to this method, the API consumer should expect an unsettled card authorization related to the customer account that was referenced. Authorization response code, authorization response code description, and authorization ID are returned upon success.
A simulated settle will only settle for the amount of the card authorization. If trying to simulate an up charge, this won't work in CV.
Example: Authorize for 10.50, Settle for 15.50, results in CV will be 10.50.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String 50 characters or less AbC123-9999 Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String 15 characters or less 4sb62fh6w4h7w34g Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String 60 characters or less 9845dk-39fdk3fj3-4483483478 A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String PAN or PRN 074103447228 Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
amount Yes Amount Monetary amount greater than 0. 25.50 Currency amounts passed as whole or fractional amounts, examples: '100.00', '100', or '100.73'.
association Yes String 'visa' or 'mc_auth' Visa Determines what association type will be simulated. Pass 'visa' for Visa and 'mc_auth' for Mastercard.
merchantName Yes String Alphanumeric string up to 40 characters in length. Fred Jones Bagels Merchant name is typically 40 bytes of fixed with delimeted data. The API consumer can pass their own 40 byte complete string or pass up to 22 bytes and the simulator with add fake address information for the remaining 18 bytes.
acquirerId No Number 6 digit number 437723 If no aquirerId value is passed, a random 6 digit number will be generated and used.
terminalId No Number 8 digit number 57395783 If no terminalId value is passed, a random 8 digit number will be generated and used.
merchantId No String 15 character alphanumeric string asdf If no merchantId value is passed a random 15 byte alphanumeric string will be generated and used.
Status codes
Response Code description
0 Success
525-01 Method not available in the production environment
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>
   </new_account>
</response_data>
auth_response_code In createSimulatedCardAuth, a code for the response received. 00
auth_response_description A description of the auth_response_code. Success
auth_id A ID for the response received. 37548997
processing_time The time elapsed in processing the transaction. 1.723
echo A data structure that displays transaction id information. <echo>
  <transaction_id>x</transaction_id>
  <provider_transaction_id>x</provider_transaction_id>
<provider_timestamp>x</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. Ve8mEK6jUKulAMy7xYGu
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
Parameters
Status codes
Response
// createSimulatedCardSettle()
This method allows for the settlement of a simulated card authorization. A call to createSimulatedCardSettle() would normally follow a call to the createSimulatedCardAuth(). Either an authId (returned by createSimulatedCardAuth()) or a merchantName value is required. (This cannot be used in production).
A simulated settle will only settle for the amount of the card authorization. If trying to simulate an up charge, this won't work in CV.
Example: Authorize for 10.50, Settle for 15.50, results in CV will be 10.50.
Parameters
Parameter Required Data type Pattern Notes
apiLogin Yes String 50 characters or less AbC123-9999 Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address.
apiTransKey Yes String 15 characters or less 4sb62fh6w4h7w34g Web Service Password as provided and authenticated by Galileo for the requesting IP Address.
providerId Yes Integer 10 digits or less 9999 Galileo issued unique Provider identifier.
transactionId Yes String 60 characters or less 9845dk-39fdk3fj3-4483483478 A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String PAN or PRN 074103447228 Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
association Yes String 'visa' or 'mc_auth' Visa Determines what association type will be simulated. Pass 'visa' for Visa and 'mc_auth' for Mastercard.
authId Conditional Integer Positive integer value 58344373 The createSimulatedCardAuth() would normally be called before calling this method. The createSimulatedCardAuth() method returns an auth_id element that is to be used as this value.
merchantName Conditional String Alphanumeric string up to 40 characters in length. Fred Jones Bagels Merchant name is typically 40 bytes of fixed with delimeted data. The API consumer can pass their own 40 byte complete string or pass up to 22 bytes and the simulator with add fake address information for the remaining 18 bytes.
amount No Amount Monetary amount greater than 0. 25.50 Currency amounts passed as whole or fractional amounts, examples: '100.00', '100', or '100.73'.
acquirerId No Number 6 digit number 437723 If no aquirerId value is passed, a random 6 digit number will be generated and used.
terminalId No Number 8 digit number 57395783 If no terminalId value is passed, a random 8 digit number will be generated and used.
merchantId No String 15 character alphanumeric string asdf If no merchantId value is passed a random 15 byte alphanumeric string will be generated and used.
Status codes
Status Code description
0 Success
544-01 Method not available in the production environment.
544-02 Authorization is not found for account.
544-03 Authorization is already settled or in the wrong status.
-1 Indicates that the application record failed to update or return.
Response
Response Description Example
status_code The status of the response. 0
status

The condition of a process or response (such as embossed card, account, freeze, and so on).

Success
system_timestamp A system generated timestamp. 2018-10-07 10:25:07
response_data A structure for the response data. It can be empty but usually will contain information.
<response_data>
                                                   <new_account>
                                                   </new_account>
                                                </response_data>
settle_response_code In createSimulatedCardSettle(), a code for the response received. 00
settle_response_description A description of the createSimulatedCarSettle() auth response code. Success
settle_dtl_id   515125
processing_time The time elapsed in processing the transaction. 0.973
echo A data structure that displays transaction ID information.
<echo>
                                                  x
                                                </echo>
                                                
transaction_id A number that reprents a transaction 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2019-02-03 10:10:10
Parameters
Status codes
Response
// searchCustomer()
searchCustomer() performs a customer search by firstName, lastName, and postalCode.
Parameters
Note that at least one (or more) of the firstName, lastName, middleName, or dateOfBirth parameters are required.
Parameters Required Data type Pattern Notes Example value
apiLogin Yes String 50 characters or less Provider's Web Service Username as provided and authenticated by Galileo for the requesting IP Address. AbC123-9999
apiTransKey Yes String 15 characters or less Web Service Password as provided and authenticated by Galileo for the requesting IP Address. 4sb62fh6w4h7w34g
providerId Yes Integer 10 digits or less Galileo issued unique Provider identifier. 9999
transactionId Yes String 60 characters or less A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction. 9845dk-39fdk3fj3-4483483478
firstName See note. String 30 characters; letters, spaces, numbers, and some punctuation: 
, . ? @ & ! # ' ~ * - ; +.
Cardholder's first name Ed
middleName See note. String Letters and spaces, maximum length of 30 characters. Cardholder's middle name W
lastName See note. String 30 characters; letters, spaces, numbers, and some punctuation: 
, . ? @ & ! # ' ~ * - ; +.
Cardholder's last name Harley
dateOfBirth See note. Date YYYY-MM-DD, minimum age per the business rules for the program. Cardholder's birth date 1980-01-01
postalCode Yes String 12345 or 12345-1234 (US), K1A-1A1 (CA) Cardholder's postal code (zip code) 84121
primaryPhone No Number Valid phone number Cardholder's primary phone number 8013656050
email No String Email Address Cardholder's email user@fakedomain.com
Status codes
Codes that define the status of the transaction.
Status Code description
0 Success
2 Invalid parameters
12 Invalid customer account
-1 Indicates that the application record failed to update or return.
Response
Response Description Example value
status The condition of a process or response (such as embossed card, account, freeze, and so on). Success
status_code The status of the response. 0
system_timestamp A system generated timestamp. 2011-02-02 11:11:12
response_data A structure for the response data. It can be empty but usually will contain information. <response_data>
   <new_account>   </new_account>
</response_data>
page The page number to be retrieved in the context of recordset paging. 1
total_record_count Number of records in the accounts list display. 1
number_of_pages Total number of pages in the accounts list display. 1
accounts Acts as a logical separator between accounts if more than one is returned. <accounts>
  <account>x</account>
</accounts>
account Acts as a logical separator to discern a specific account. <account>
  <pmt_ref_no>001117747228</pmt_ref_no>
  <first_name>Cls</first_name>
  <middle_name>Support</middle_name>
  <last_name>Testing</last_name>
  <email/>
  <status>N</status>
  <active>Y</active>
  <galileo_account_number>5014414</galileo_account_number>
  <product_id>94</product_id>
  <group_id>10</group_id>
  <application_date>2018-04-26 00:00:00</application_date>
</account>
pmt_ref_no A Galileo generated account number. 001117747228
first_name A person's first name as listed on the account. Dale
middle_name A person's middle name as listed on the account. Elizabeth
last_name A person's last name as listed on the account. Spencer
email The email address on a profile. someone@somewhere.org
status See Account Statuses in the documentation. N
active Yes or no to flag an active account. Y
galileo_account_number Galileo generated integer account number, also known as balance ID. 5014414
group_id Integer value used for tracking the location (store, entity, etc...) where the customer was acquired. The group_id is set using the location and locationType parameters. 10
application_date The date an application was made to create an account. 2018-04-26 00:00:00
processing_time The time elapsed in processing the transaction. 1.723
echo A structure that displays transaction ID information. <echo>
  <transaction_id>...</transaction_id>
  <provider_transaction_id>...</provider_transaction_id>
  <provider_timestamp>...</provider_timestamp>
</echo>
transaction_id A number that represents a transaction. 12345a
provider_transaction_id Secondary transaction identifier (generated by a provider). 77bb
provider_timestamp Store a related timestamp for reporting and troubleshooting purposes. 2013-02-06 10:10:10
Parameters
Status codes
Response